asp.net dataSet 可以直接更新数据到数据库么,不另外写updata SQL语句
想实现点击量,比如数据表有个字段click(表示点击量),sql写了,SqlDataAdapter.Fill(DataSet)填充在DataSet中了,可以直接修改Dat...
想实现点击量,比如数据表有个字段click(表示点击量),sql写了, SqlDataAdapter.Fill(DataSet)填充在 DataSet中了,可以直接修改DataSet的字段的值,达到修改数据表数据的功能么,请问怎么做,简单说明一下
展开
3个回答
展开全部
SqlDataAdapter的UpdateCommand的执行机制是:当调用SqlDataAdapter.Update()时,检查DataSet中的所有行,然后对每一个修改过的Row执行SqlDataAdapter.UpdateCommand ,也就是说如果未修改DataSet中的数据,SqlDataAdapter.UpdateCommand不会执行。
DataAdapter本质上是利用sql语句和数据库交互,因为其中会有连接字符串的信息,所以一般来说DataAdapter只会存在访问层
而dataset本质上是内存中的数据库,数据读到dataset后,数据库的连接就会断开,更改dataset只是改内存中的数据。想要保存更改到数据库,只能更新过去。dataset支持事件,你可以写个onchange事件,当dataset更改时更新数据库
DataAdapter本质上是利用sql语句和数据库交互,因为其中会有连接字符串的信息,所以一般来说DataAdapter只会存在访问层
而dataset本质上是内存中的数据库,数据读到dataset后,数据库的连接就会断开,更改dataset只是改内存中的数据。想要保存更改到数据库,只能更新过去。dataset支持事件,你可以写个onchange事件,当dataset更改时更新数据库
展开全部
SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
然后用命令构造器构造myAdapter的增删改命令
myAdapter.InsertCommand = myCommandBuilder
.GetInsertCommand();//插入
myAdapter.UpdateCommand = myCommandBuilder
.GetUpdateCommand();//更新
myAdapter.DeleteCommand = myCommandBuilder
.GetDeleteCommand();//删除
myAdapter.Update()调用
然后用命令构造器构造myAdapter的增删改命令
myAdapter.InsertCommand = myCommandBuilder
.GetInsertCommand();//插入
myAdapter.UpdateCommand = myCommandBuilder
.GetUpdateCommand();//更新
myAdapter.DeleteCommand = myCommandBuilder
.GetDeleteCommand();//删除
myAdapter.Update()调用
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询