请教:关于DataSetProvider的UpdteMode?

Libran 2002-08-23 06:15:39
在CB6+SQL Server 2000下开发应用服务器,使用ADODataSet连接SQL Server,用DataSetProvider向客户端提供数据,客户端用DCOMConnection访问服务器,用ClientDataSet获得数据,以DBGrid通过DataSource连接ClientDataSet来显示和编辑数据。
现设置服务器端DataSetProvider的UpdateMode属性为upWhereKeyOnly,当客户端修改一条记录并提交后,却更新了所有的记录,使用SQL Server事件探查器发现,提交更新的SQL语句无限制条件,所以所有记录都被更新。何故?如何解决?
...全文
98 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Libran 2002-08-23
  • 打赏
  • 举报
回复
操作的数据表不固定,怎么办?
能不能自动获得数据表KEY的字段名并作相应设置?
猛禽 2002-08-23
  • 打赏
  • 举报
回复
因为你没有指定哪个字段为KEY,所以就没有条件了。
你应该在与DataSetProvider相连的ADODataSet的AfterOpen事件中将KEY字段设置一下:
DataSet->FieldByName( "ID" )->ProviderFlags = TProviderFlag() << pfInKey;

13,870

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧