各位DX请进: 自己编写deletecommand语句,更新数据库的问题
win form程序
我有数据库A,表为TABLE;字段为:
ID(自动编号),name(文本,20), tel(文本,20), jg(文本,50),
…….
Mycnn.open();
Dataset mys=new dataset();
Myada.fill(mys,”one”);
Datatable mytable=mys.tables[“one”];
foreach( DataRow row in myTable.Rows )
{
if(row[3]==”江苏”)
row.delete();
}
OleDbCommand mycmd=new OleDbCommand("delete * from table where jg=@a",mycnn);
mycmd.Parameters.Add("@a",System.Data.OleDb.OleDbType.varchar,50,"jg");
myada.updata(mys,”one”);
程序运行后提示:
“并发冲突,delete command影响0个记录!!“
但查看数据库,符合条件(jg=”江苏”)的记录已经删除!!
如果符合条件的记录只有一条,程序也运行正常,没有任何错误提示,数据库能成功更新!Why????
郁闷!!郁闷!!
我于是修改了mycmd,加了个ID参数
OleDbCommand mycmd=new OleDbCommand("delete * from table where jg=@a and ID=@b",mycnn);
mycmd.Parameters.Add("@a",System.Data.OleDb.OleDbType.varchar,50,"jg");
mycmd.Parameters.Add("@b",System.Data.OleDb.OleDbType.integer,0,"ID");
myada.updata(mys,”one”);
程序运行正常!!,没有任何错误提示!数据库能成功更新!
各位DX,请问什么原因?
该如何写Delete command语句??