首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SqlDataAdapter.Update是否也会更新数据表?

问SqlDataAdapter.Update是否也会更新数据表?
EN

Stack Overflow用户
提问于 2011-06-16 21:48:57
回答 1查看 415关注 0票数 0

我的问题是,如果您使用datatable中的数据更新数据库后,datatable是否也会使用数据库中的最新信息进行更新。或者我必须做一些类似以下的事情:

代码语言:javascript
复制
Dim newFilesAdptr As SqlDataAdapter = New SqlDataAdapter(newFilesCmd)
Dim newFilesBuilder As SqlCommandBuilder = New SqlCommandBuilder(newFilesAdptr)
Dim newFilesDataTable As DataTable = New DataTable
newFilesAdptr.Fill(newFilesDataTable)

'Some code

newFilesDataTable.Rows.Add(newFilesRow)
newFilesAdptr.Update(newFilesDataTable)

'Immediately get newest data
newFilesDataTable = Nothing
newFilesDataTable = New DataTable
newFilesAdptr.Fill(newFilesDataTable)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-17 02:51:12

No -数据不会从DB同步回内存中的datatable。它有效地将datatable中的数据(且仅此数据)同步到实际数据库。

此方法读取表中每个数据行的行状态,并对数据库应用相应的操作(update、insert、delete)以反映更改。

通过DataAdapter成功调用更新后,可以调用DataTable.AcceptChanges()将表中所有行的行状态重置为未更改,从而清除所有已删除的行,并有效地将数据表中的行与数据库中的行同步,尽管数据库中的新数据不会加载回数据表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6372954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档