在我的项目中,我有“产品”表。
ID Name Price
------------------
1 xyz 100
2 abc 200
3 pqr 300
在我的c#代码中,我想使用SqlAdapter更新我的表行。 为此,我创建了一个数据表
DataTable dtTable=new DataTable("Product");
将更新的值添加到Datatable。即
ID Name Price
------------------
1 aaa 100
2 bbb 200
3 ccc 300
我使用以下步骤使用此值更新数据库中的表
SqlConnection myLocalConnection = new SqlConnection(_ConnectionString);
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter("Select * from " + dtTable.TableName, myLocalConnection);
SqlCommandBuilder mySqlCommandBuilder = new SqlCommandBuilder(mySqlDataAdapter);
mySqlDataAdapter.Update(dtTable);
但是在执行此更新功能时,在数据库中所有表都是重复的。
ID Name Price
------------------
1 xyz 100
2 abc 200
3 pqr 300
4 aaa 100
5 bbb 200
6 ccc 300
我只想替换现有数据。为什么这些行在此表中重复。 请帮忙
答案 0 :(得分:0)
根据Updating Data Sources with DataAdapters,您必须自己指定更新命令,然后可以调用sql数据适配器的Update函数!
SqlDataAdapter mySqlDataAdapter =
new SqlDataAdapter("Select * from " + dtTable.TableName, myLocalConnection);
dataAdpater.UpdateCommand = new SqlCommand("UPDATE ...", connection);
mySqlDataAdapter.Update(dtTable);