数据库能连接上,但像删除,更新的一些操作执行不成功,读取倒是可以的,是怎么回事,简单代码如下:
//create DataAdapter object
strSql = "select * from customer";
SqlDataAdapter adapter = new SqlDataAdapter(strSql, conn);
//create commandbuilder object
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(adapter);
//create DataSet and fill it
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, "customer");dataSet.Tables["customer"].Rows[0].Delete();
dataSet.AcceptChanges();
adapter.Update(dataSet, "customer");
...
//create DataAdapter object
strSql = "select * from customer";
SqlDataAdapter adapter = new SqlDataAdapter(strSql, conn);
//create commandbuilder object
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(adapter);
//create DataSet and fill it
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, "customer");dataSet.Tables["customer"].Rows[0].Delete();
dataSet.AcceptChanges();
adapter.Update(dataSet, "customer");
...
adapter.Update(dataSet, "customer");
===================
adapter.Update(dataSet, "customer");
dataSet.AcceptChanges();
adapter.InsertCommand = commandBuilder .GetInsertCommand();
adapter.DeleteCommand = commandBuilder .GetDeleteCommand();
adapter.UpdateCommand = commandBuilder .GetUpdateCommand();
==============
customer表是否设置了主键?
SqlDataAdapter adapter = new SqlDataAdapter(strSql, conn);
//create commandbuilder object
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(adapter);
//create DataSet and fill it
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, "customer");//set up key object
DataColumn[] keys = new DataColumn[1];
keys[0] = dataSet.Tables[strObjName].Columns[0];
dataSet.Tables[strObjName].PrimaryKey = keys;
dataSet.Tables["customer"].Rows[0].Delete();
dataSet.AcceptChanges();
adapter.Update(dataSet, "customer");
dataSet.AcceptChanges();
adapter.Update(dataSet, "customer");
====================
adapter.Update(dataSet, "customer");
dataSet.AcceptChanges();