c#数据库更新/插入tableapter
本文关键字:插入 tableapter 更新 数据库 | 更新日期: 2023-09-27 17:50:12
我有一个关于在c#中插入和更新数据库的"小"问题。我使用表适配器进行插入和更新。该信息来自包含客户信息的XML文件。我的主键是customer_nr
,它由XML文件提供。
现在我的问题是加载XML文件时,不知何故我想检查数据库是否已经具有特定的customer_nr
。如果customer_nr
存在,则更新数据库(如果客户更改了地址,则应该更新),否则,如果customer_nr
不存在,则插入新行(包含客户信息)。
(adapter.getCustomerNr
是表适配器中的SQL命令,我选择所有customer_numbers
.)
DataSet1TableAdapters.customer_infoTableAdapter adapter = new DataSet1TableAdapters.customer_infoTableAdapter();
foreach (var t in customerInfo)
{
if (adapter.CustomerNr() != null)
{
adapter.Update(t.firstName,t.lastName,t.customerNr);
}
else {
adapter.Insert(t.customerNr, t.firstName, t.lastName);
}
}
由于我是c#的新手,我很好奇这是否有效。但我认为这是可行的。如果有人能帮助我或给我一些例子如何进一步下去,我将非常感激。
在update命令中,让它使用一个存储过程,在插入记录之前进行检查:
IF NOT EXISTS(SELECT customer_nr FROM Customers where customer_nr = @customer_nr)
BEGIN
...(your query)
END