虽说C#对数据库的处理能力相当强大,但有时候只是想完成一些简单的功能时,总觉得往往太啰嗦太麻烦,比喻说查询出一些数据,修改并更新到数据库里。
这么简单的事情在C#下却折腾了我两三天。现学现用就是不好。
好了,费话不说了,看代码:
String ConnString = "data source=localhost;initial catalog=MyDB;UID=sa;PWD=123; Max Pool Size=300"; String sql = "select * from MyTable";
SqlConnection conn = new SqlConnection(ConnString); SqlDataAdapter da = new SqlDataAdapter(sql, conn); SqlCommandBuilder cb = new SqlCommandBuilder(da);
DataSet ds = new DataSet(); da.Fill(ds); if(ds.Tables[0].Columns["MyColumn"]!=null) ds.Tables[0].Rows[0]["MyColumn"] = 2; da.Update(ds); conn.Close();
|
这方法由于是自动创建Update语句的,所以适用于表、列不确定的情况。
由于是现学现卖,也说不出更多的道理。不过有三点要注意:
1.SqlCommandBuilder不可省略,虽然看上去没用;
2.要用DataSet而不能用DataTable;
3.该更新的表要有主键,否则会更新出错。
欢迎留言指正。
阅读(589) | 评论(0) | 转发(0) |