adapter.InsertCommand = cmd;
你的adapter执行Updata时调用InsertCommand里的sql语句,而你这个InsertCommand里是select语句,肯定不能更新数据库必须是updata语句。
如:
catDA.UpdateCommand = new SqlCommand("UPDATE Categories SET CategoryName = @CategoryName " +
"WHERE CategoryID = @CategoryID" , nwindConn);catDA.UpdateCommand.Parameters.Add("@CategoryName", SqlDbType.NVarChar, 15, "CategoryName");SqlParameter workParm = catDA.UpdateCommand.Parameters.Add("@CategoryID", SqlDbType.Int);
workParm.SourceColumn = "CategoryID";
workParm.SourceVersion = DataRowVersion.Original;
你的adapter执行Updata时调用InsertCommand里的sql语句,而你这个InsertCommand里是select语句,肯定不能更新数据库必须是updata语句。
如:
catDA.UpdateCommand = new SqlCommand("UPDATE Categories SET CategoryName = @CategoryName " +
"WHERE CategoryID = @CategoryID" , nwindConn);catDA.UpdateCommand.Parameters.Add("@CategoryName", SqlDbType.NVarChar, 15, "CategoryName");SqlParameter workParm = catDA.UpdateCommand.Parameters.Add("@CategoryID", SqlDbType.Int);
workParm.SourceColumn = "CategoryID";
workParm.SourceVersion = DataRowVersion.Original;
解决方案 »
- 求助 关于 操作符重载的
- C# winform tabindex顺序不对
- 使用webbrowser如何获取JavaScript中变量的值?
- WingForm 问题 高手请帮忙!!!!!!!!`
- SOCKET 通讯的难题,SOCKET 通讯的难题,SOCKET 通讯的难题
- 子窗口中怎么调用父窗口的函数?
- SqlConnection 问题求解
- 一个关于析构函数遇到的问题
- 我自己定义的DataGrid,从WebControls.DataGrid继承,为什么不能在属性窗口设置Columns属性?
- 疑惑:为何读取文件所得的中文字全为问号??
- 如何查看dll文件中的函数?
- 请教:我的电脑SQL没有NetSDK
这里的问题了
SqlCommand addcmd = new SqlCommand("Insert into base(name,age) values(@name,@age)",conn);
addcmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@name", System.Data.SqlDbType.NVarChar, 10, "name"));
addcmd.Parameters.Add(new System.Data.SqlClient.SqlParameter("@age", System.Data.SqlDbType.NVarChar, 10, "age"));adapter.InsertCommand = addcmd;
DataRow drAdd = ds.Tables["table1"].NewRow();
drAdd[1] = dg[dg.CurrentRowIndex,1];
drAdd[2] = dg[dg.CurrentRowIndex,2];
ds.Tables["table1"].Rows.Add(drAdd);
//////////
adapter.Update(ds,"base");为什么会产生两条同样的记录呀????
DataRow drAdd = ds.Tables["table1"].NewRow();
drAdd[1] = dg[dg.CurrentRowIndex,1];
drAdd[2] = dg[dg.CurrentRowIndex,2];
ds.Tables["table1"].Rows.Add(drAdd);
以上语句必须留下,请问怎么修改才能实现??
用SqlCommandBuilder效率比较低,最好还是自己写
dataAdapter.InsertCommand.CommandText = "Sql语句";
如果InsertCommand不存在,就要实例化一个SqlCommand对象。
dataAdapter.InsertCommand = new SqlCommand();