Table表中数据类型的转换
各位大神帮我看下这还有别的方法转换类型吗?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.OleDb;
namespace ConsoleApp_cXTest
{
class Program
{
private const string CONN_STR = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\AccessData2007\myDate1.accdb";
static void Main(string[] args)
{
string sql = "select * from myTable";
if (AddObjectIntoTable(sql)>0)
{
Console.WriteLine("成功添加数据!");
}
else
{
Console.WriteLine("数据添加失败!");
}
Console.ReadKey();
}
public static int AddObjectIntoTable(string sql)
{
int n = 0;
DataTable m_Table = new DataTable();
OleDbConnection oledb_cn = null; ;
try
{
oledb_cn = new OleDbConnection(CONN_STR);
oledb_cn.Open();
OleDbDataAdapter oledb_da = new OleDbDataAdapter(sql, oledb_cn);
oledb_da.Fill(m_Table);
DataRow newRow = m_Table.NewRow();
//循环添加列数据到newRow中
for (int i = 0; i < m_Table.Columns.Count; i++)
{
Console.Write("请输入 "+m_Table.Columns[i].ColumnName + ":"); //提示输入的列名称
string str = Console.ReadLine();
Type type = m_Table.Columns[i].DataType; //获取列的数据类型
//数据类型转换,没有找到别的方法,只有用这最笨的方法
//哪们大神能给出别的方法不
switch(type.Name)
{
case "Int32":
newRow[i] = str != "" ? int.Parse(str) : 0;
break;
case "String":
newRow[i] = str;
break;
case "Double":
newRow[i] = str != "" ? double.Parse(str) : 0;
break;
}
}
m_Table.Rows.Add(newRow);
OleDbCommandBuilder oledb_cmb = new OleDbCommandBuilder(oledb_da);
n=oledb_da.Update(m_Table);
}
catch (Exception e)
{
Console.WriteLine("Eorr:" + e.Message);
}
finally
{
if(oledb_cn.State==ConnectionState.Open)
{
oledb_cn.Close();
}
}
return n;
}
}
}
Table表中数据类型的转换的更多相关文章
- 从Table 表中取出第 m 条到第 n 条的记录
* FROM Table id FROM Table )) --从TABLE表中取出第m到n条记录 (Exists版本) * FROM TABLE AS a WHERE Not Exists ( * ...
- java中数据类型的转换
数据类型的转换,分为自动转换和强制转换. 自动转换是程序执行过程中“悄然”进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换 强制转换必须在代码中声明,转换顺序不受限制 自动数据类 ...
- 读取Excel数据到Table表中
方法一: try { List<DBUtility.CommandInfo> list = new List<DBUtility.CommandInfo>(); string ...
- jQuery获取table表中的td标签
首先我来介绍一下我遇到的问题 1.当有一个table表包含了<tr>标签,<td>标签,大致可以认为是这样的: <tr> <td> @scene.ID ...
- Java中数据类型默认转换和强制类型转换
默认转换: a:由低到高一次为:(byte short char )---int ---long ---float --- double b:注意:byte short char ...
- php中数据类型自动转换
1.1 转为布尔型(即返回值为0) 空字符串''或"" 数字0或0.0 字符'0'或"0" 空值NULL 没有成员的数组 其余都转换成布尔型true,包含 ...
- iview table表中使用render函数props传值出现问题
使用iview中的table表格时避免不了使用render函数渲染自定义内容,或者渲染组件.但是在正常使用时出现了props传值无法识别, 按照官网介绍使用props如下: render: (h, p ...
- 判断Table表中是否含有某一列
if (row.Table.Columns.Contains("DealRecord_GiftCost")) { if (row["DealRecord_Gift ...
- Python中数据类型的转换
bytes<-->str a="hello" #str字符型 #str转换为bytes类型 b=a.encode("utf-8") 或 b=byte ...
随机推荐
- web端 微软 RDLC 报表插件 宽大于高 横向打印失效 解决方案
起因于系统报表工具使用的RDLC,本地测试一直使用的纵向打印,未测试过横向打印
- 云数据库 MariaDB 版
基于MariaDB企业版全球独家合作认证,提供Oracle兼容性及众多企业级数据库特性.支持包括MySQL InnoDB等多种存储引擎,为不同需求的用户提供灵活的选择. 请看视频简介 优势 Oracl ...
- spring配置文件拆分策略及方法
一.拆分策略 如果一个开发人员负责一个模块,我们采用公用配置(包括数据源.事务等)+每个系统模块一个单独配置文件(包括Dao.Service.Web控制器)的形式 如果是按照分层进行的分工,我们采用公 ...
- FFmpeg4.0笔记:VS2019编译FFmpeg4.0源码
0.下载TDM.msys和yasm 1.安装TDM-GCC-64 2.安装msys到TDM-GCC的安装目录中 3.将call "C:\Program Files (x86)\Microso ...
- 谷歌官方颜色库 MaterialDesignColor
谷歌官方颜色库 MaterialDesignColor
- 使用mybatis插件自动生成代码以及问题处理
1.pom.xml中加入依赖插件 <!-- mybatis generator 自动生成代码插件 --> <plugin> <groupId>org.mybatis ...
- Linux Exploit系列之一 典型的基于堆栈的缓冲区溢出
Linux (x86) Exploit 开发系列教程之一(典型的基于堆栈的缓冲区溢出) Note:本文大部分来自于看雪hackyzh的中文翻译,加入了一些自己的理解 典型的基于堆栈的缓冲区溢出 虚拟机 ...
- Linux查看修改文件句柄数
SuSE 11SP3 默认句柄数是1024 1.查看linux的文件句柄数 ulimit -a 2.修改文件句柄数 ①ulimit -n 65535②修改linux系统参数.vi /etc/secur ...
- 【转载】java工程师学习之路---给自己的目标
想学习或者提升java的可以看看,单从java角度来看总结的虽然还是很全面的,主要是为了自己看 http://blog.csdn.net/peace1213/article/details/50849 ...
- 记一次生产环境presto删表失败的问题
场景,开发用java程序连接presto创建一个表,这个表在hdfs的权限为: 然后用presto去删除这个表 报错,没有权限删除,查看上一级目录权限,发现权限正常 直连hive删表 发现正常. 然后 ...