0

我有一个DataTable新条目,我想将它们添加到现有数据库中。

所以我创建一个SqlDataAdapter并用它填充第二个表,然后合并两个表,并更新数据库,但没有任何反应,返回值为 0,数据库保持不变。

这是我的代码:

DBManager.DBDestinationConnect(textBox10.Text, textBox9.Text, textBox8.Text, textBox7.Text, ref destinationConnection);
//DBManager is a Class, to connect with the database
CategoryAdapterBackup = new SqlDataAdapter("SELECT*FROM " + tablename, destinationConnection);

CategoryTableBackup = new DataTable();
CategoryAdapterBackup.Fill(CategoryTableBackup);
CategoryTableBackup.Merge(SubTable);

//SubTable is the DataTable with the new entries
CategoryAdapterBackup.Update(CategoryTableBackup);
4

2 回答 2

0

试试 with CategoryAdapterBackup.Flush()or with also,用(带空格)DBManager.Flush() 替换可能是个好主意SELECT*FROMSELECT * FROM

于 2013-11-14T15:08:22.207 回答
0

我在用这段代码辨别你的意图时遇到了问题。为什么不简单地在 SubTable 上使用 sqlbulkcopy?这会将 SubTable 的内容附加到目标 SQL 表中。如果您害怕重复,则将 SubTable Table 的内容插入到数据库中的 Temp 中,并且可能使用 Join 将行插入到目标表中不存在行的目标表中。

于 2013-11-14T17:16:37.800 回答