.NET下使用DataAdapter保存数据时,如何生成command语句及使用事务 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- .NET下使用DataAdapter保存数据时,如何生成command语句及使用事务 (http://www.webasp.net/article/28/27713.htm) |
| -- 作者:未知 -- 发布日期: 2006-08-02 |
在.NET下,运用DATASET对数据进行批量更新时,需要与 DataAdapter配合使用。DataAdapter数据适配器的作用是生成数据更新时所需的insert,delete,update等语句,这些语句一般在开发阶段,在IDE环境下生成,但是如果需要在程序中动态配置数据来源,那么DataAdapter的insert,delete,update语句就需要动态生成了。这就是SqlCommandBuilder 对像了(以SqlDataAdapter对像为例,如果是别的DataAdapter对像,则可改为DBCommandBuilder )。例如有以下更新方法 /// <summary> public void DataSetUpdate(DataSet ds,string connectstr,string tablename,string sqlstr) //使用SqlCommandBuilder 对像填充SqlDataAdapter 的InsertCommand、DeleteCommand、UpdateCommand对像
以上完成对单个数据表的保存,如果需要将多个数据表保存到数据库,就需要运用事务,将以上方法重载一次 public void DataSetUpdate(DataSet ds, SqlConnection sqlconnect, string tablename, string sqlstr,SqlTransaction sqltrans)
adapter.DeleteCommand = new SqlCommand("", sqlconnect, sqltrans); //使用GetDeleteCommand将相对应的SQLCOMMAND对像传入 adapter.DeleteCommand = cmdBuilder.GetDeleteCommand(); 通过以上方法,将SqlDataAdapter 对像的更新绑定到了事务,那么在外层调用如下 System.Data.SqlClient.SqlConnection sqlcon = new System.Data.SqlClient.SqlConnection(connectionstring); //将事务绑定到连接对像 |
| webasp.net |