关于TDataSetProvider的UpdateMode属性。(100分)

  • 主题发起人 主题发起人 free_knight
  • 开始时间 开始时间
F

free_knight

Unregistered / Unconfirmed
GUEST, unregistred user!
谁能详细解释一下TDataSetProvider的UpdateMode属性
upWhereAll
upWhereChanged
upWhereKeyOnly
它们的作用与区别。
 
upWhereAll :All columns (fields) are used to locate the record.(使用所有的字段来定位需要修改的记录)
upWhereChanged:Only key field values and the original value of fields that have changed are used to find the record.
(只使用关键字和被修改的字段原来的数据来定位需要修改的记录。)
upWhereKeyOnly:Only key fields are used to find the record.
(只使用关键字来定位需要修改的记录。)
 
意思我知道,
可我想知道的是操作应用时的不同之处,
最好是用例子来说明
 

这和delphi将数据更新回数据库时生成的Sql语句有关。比如有一个表
a(
aaa char(10),
bbb char(10),
ccc char(10)
primary key (aaa)
)
如果UpdateMode=upWhereAll
则修改数据时Delphi生成的语句大概是
update a set aaa=something ,bbb=something,ccc=something
where aaa=:1 and bbb=:2 and ccc=:3
如果UpdateMode=upWhereChanged,用户修改了bbb
则修改数据时Delphi生成的语句大概是
updata a set bbb=something
where aaa=:1 and bbb=:2
如果UpdateMode=upWhereKeyOnly,用户修改了bbb
则修改数据时Delphi生成的语句大概是
updata a set bbb=something
where aaa=:1
 
看看memo目录下是否有应用呀!
 
多谢各位,我明白了。
 
后退
顶部