关于delphi三层中更新数据的问题(10分)

  • 主题发起人 主题发起人 stoneking
  • 开始时间 开始时间
S

stoneking

Unregistered / Unconfirmed
GUEST, unregistred user!
各位富翁:
为什麽我的以下程序:
procedure TForm1.applyClick(Sender: TObject);
begin
dm.ClientDataSet1.Post ;
showmessage(inttostr(dm.ClientDataSet1.ChangeCount ));
dm.ClientDataSet1.ApplyUpdates(0);
end;
在服务器端会报错,添加记录时报“insert into 语句的语法错误”
修改时报“update 语句的语法错误”
有没有哪个知道
 
我用的是:服务器用Ado+datasetprovider,客户端用socketconnection 连接
不要嫌分少,实在我的可用分太少了,帮帮我吧!!!
 
请问你的Sql语句是什么
 
我遇到过类似的问题.
你的ClientDataset 连接的Datasetprovider的ResolveToDataset属性是不是设为False?
这样的话Delphi就自己产生一个sql语句替你更新数据,不幸的是自动产生的sql语句常常不正确.
将那个属性改为True,可能解决这个问题,但是可能会产生部分数据未被更新的错误.
这要看你是用的Table还是Query了.
我后来改用query,就完全OK了.
建议你读一下李维<分布式多层系统>有关更新数据的章节.
 
非常感谢shaver,果如你所言!给10分加上我的感谢!!
也谢谢其他回答我问题的人!
 
后退
顶部