关于分布式的问题:找了一天的原因,实在找不到请大家帮忙,出现这个提示:Unable to fined record Nokey specified?

  • 主题发起人 主题发起人 ansili
  • 开始时间 开始时间
A

ansili

Unregistered / Unconfirmed
GUEST, unregistred user!
关于分布式的问题:找了一天的原因,实在找不到请大家帮忙,出现这个提示:Unable to fined record Nokey specified??? 急急急急! (100分)<br />出现这个提示:Unable to fined record Nokey specified??
1。用SOCKETCONNETION连接的。ACCESS数据库。用ADOCONNECTION,ADODATASET。
2。用SQL语句可以,但在用APPEND添加以后,用ApplyUpdates保存时出现上面的 错 误,pos没有错误提示。
3。数据库有主键,不是自动添加。
 
只有跟踪你的服务器程序中处理过程才能找到
错误的原因。
打开服务器的project下断点运行。
然后执行客户端程序触发断点。单步执行看看错在哪里。
 
Post还只是保存到本地,肯定不会出错啦?你有没有多表关联!如果有多表关
联的话,一定要区分字段?不过我觉得客户端错的可能性不大?关键是服务器
你调试一下!试了没有?
 
服务器端用的SQL语句更新还是数据集更新?
是那种更新模式?(upWhereAll,upWhereChanged,upWhereKeyOnly)
 
没有关联多表。
服务器的有些DataSetProvider控件的UpDateMode属性为 upWhereKeyOnly。
好象没有什么影响。
以前用ADOTABLE时没有这些错误,想我换为ADODATASET,就是这个问题。
 
在ADOQuery1的OnAfterOpen事件中加入:
ADOQuery1.FieldByName('关键字').ProviderFlags := [pfInUpdate, pfInWhere, pfInKey];
试试看。
 
估计是哪里原因啊?
我很困惑。
 
ADODATASET的查询语句中要包含主键
 
yyhhan正解,如果是Join的DatasetProvider.OnGetTable事件TableName='要更新的表名'
 
后退
顶部