内存中的dataTable 插入 数据库表table1 table1 除了多一个自动增长的主键列以外,表结构和datatable是一样的,最好有代码示例。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 OleDbConnection conn = new OleDbConnection(connstr); string sqlstr = "select * from table1"; da = new OleDbDataAdapter(sqlstr, conn); OleDbCommandBuilder cb = new OleDbCommandBuilder(da); DataSet ds = new DataSet(); da.Fill(ds,"TEST"); ds.Tables["TEST"].Merge(dt);//dt即你的内存表 da.Update(ds,"TEST"); ds.AcceptChanges(); jiatong1981(末日之痕)内存中的表和要插入的目的表列名必须要一致么? table1 除了多一个自动增长的主键列以外,表结构和datatable是一样的,===============================================================汗 没看清楚啊 个人认为应该是table1设置一个自增的主键列 datatable就不用来维护了PS:刚发的代码如果是这种情况 不能使用CommandBuilder 而需要自己写增删该的sql语句 那只能遍历内存中的表一条条插入了?=====================================使用da.Update(ds,"TEST");来更新数据库 实际上也是一条条的 只不过代码方面的开发量很小如果方便的话 你可以考虑给数据库中增加一个自增字段来充当主键 你就不用在代码中来维护哪个主键了 如果嫌麻烦 可以在数据库中设置两个字段 一个为自增的主键字段 另一个字段为你当前代码中实际维护的那个主键字段 内存中的表结够我是可以修改的你的意思是在读出的datatable加一个自动增长列?但是这段代码是经常执行的2个自动增长列肯定会冲突的 内存中的表结够我是可以修改的你的意思是在读出的datatable加一个自动增长列?但是这段代码是经常执行的2个自动增长列肯定会冲突的==========================================我没这个意思 我看你写的table1 除了多一个自动增长的主键列以外,表结构和datatable是一样的,最好有代码示例。//你到底现在是数据库中有主键字段 还是内存表中有啊?我都看晕了 我的意思数据库中设置一个自增的字段为主键=======================================table1(要插入的数据库表)就是有一个自增的主键啊然后再弄一个字段和你当前的字段一样=============================在取得的datatable里加一个字段和table1的主键字段一样?(这个可以办到)小弟愚钝,请兄台明示! 又仔细看看lz的确描述清楚了 我自己把自己绕糊涂了…… 在此向小学语文老师say sorry jiatong1981(末日之痕) 兄台 只是一时粗心, 在所难免! 找出每个月复合条件的那一天 (逻辑题) js 获取图片路径 IE 火狐的差异~! Replace的使用? 求最小生成树代码? 有关字符串数组基础问题(菜鸟级) 结构数组中元素的比较 老问题,学习c#怎么进阶 如果在IE中显示的网页中的文本框填入文字 有用过win2003server 的吗? visual studio 2010进行反向工程 C#中如何保存事务的问题 用Ctrl+C将excel一段内容复制到剪贴板,然后把用Ctrl+V粘贴到datagrid中
string sqlstr = "select * from table1";
da = new OleDbDataAdapter(sqlstr, conn);
OleDbCommandBuilder cb = new OleDbCommandBuilder(da); DataSet ds = new DataSet();
da.Fill(ds,"TEST");
ds.Tables["TEST"].Merge(dt);//dt即你的内存表
da.Update(ds,"TEST");
ds.AcceptChanges();
内存中的表和要插入的目的表列名必须要一致么?
===============================================================汗 没看清楚啊 个人认为应该是table1设置一个自增的主键列 datatable就不用来维护了PS:刚发的代码如果是这种情况 不能使用CommandBuilder 而需要自己写增删该的sql语句
=====================================
使用da.Update(ds,"TEST");来更新数据库 实际上也是一条条的 只不过代码方面的开发量很小如果方便的话 你可以考虑给数据库中增加一个自增字段来充当主键 你就不用在代码中来维护哪个主键了 如果嫌麻烦 可以在数据库中设置两个字段 一个为自增的主键字段 另一个字段为你当前代码中实际维护的那个主键字段
你的意思是在读出的datatable加一个自动增长列?但是这段代码是经常执行的
2个自动增长列肯定会冲突的
你的意思是在读出的datatable加一个自动增长列?但是这段代码是经常执行的
2个自动增长列肯定会冲突的
==========================================
我没这个意思 我看你写的table1 除了多一个自动增长的主键列以外,表结构和datatable是一样的,
最好有代码示例。//你到底现在是数据库中有主键字段 还是内存表中有啊?我都看晕了
=======================================
table1(要插入的数据库表)就是有一个自增的主键啊然后再弄一个字段和你当前的字段一样
=============================
在取得的datatable里加一个字段和table1的主键字段一样?(这个可以办到)
小弟愚钝,请兄台明示!
兄台 只是一时粗心, 在所难免!