ORACLE的数据不能提交,请各位大虾帮助(100分)

  • 主题发起人 主题发起人 lxzazl
  • 开始时间 开始时间
L

lxzazl

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在在做一个三层结构的数据库管理系统,后台是 ORACLE 8,前台是DELPHI 5,可在数据刷新
时出现错误,提示说需要用 APPLY UPDATES之后才能刷新,可我已经调用了TClientDataset.ApplyUpdates方法,
TClientDataset.ApplyUpdates(0)、TClientDataset.ApplyUpdates(-1)都试过。请问是什么
问题,应该怎样解决。
 
是我没说清楚还是分太少,如果嫌少可以再加100分,很急的!!!
 
试一试sql.add('commit')
 
读取TClientDataset.ApplyUpdates(0)的返回值,如果返回值是0说明提交正常,
否则返回无法提交的记录数。
 
to cactus123456:
怎样写,具体点好吗
to panyongze:
试了,返回值不是 0 ,怎么办
 
返回值不是 0 ,说明有些记录没有提交成功,如果返回10说明有10条记录没有提交成功,
请检查提交部分。
或者把代码寄过来帮你看看
 
用下面语句试一下
ClientDataSet1.DataRequest('commit');
 
to sjzqingqing:
很遗憾,还是不行
to panyongze:
不管更新多少条记录,返回值都是 1。 程序和李维《分布式多层应用系统篇》第二章的
例子相似,只是后台换成 ORACLE 。
 
另外: ORACLE的数据结构应该没问题,在 C/S 下试了,不用写任何代码就没问题。
 
和我遇见的问题一样,我发现的问题是:
使用
if ClientDataSet.ApplyUpdates(0)>0 then
//错误大于0时
showMessage('更新有误!');
判断更新是否有错误。
因为我在应用程序服务器中使用了TUPDATESQL控件,由于TUPDATESQL中的MODIFYSQL的
语句有问题,后来修改了TUPDATESQL中的MODIFYSQL语句,在更新就没问题了。
 
to lxzazl
你是用ORACLE作为数据库的吗?我以前试过许多次,用ORACLE,如果要更新,就得自己写代码
,用QUERY或UPDATESQL。请问你是如何实现的(不用写任何代码?)
 
是否改动了DataBase和ClientDataSet的默认设置.
是否有修改数据库的权限
 
谢谢各位,已经OK了,是数据库驱动程序的问题。
另外:欢迎开发过或正在开发类似系统的朋友共同交流。QQ:37232865
 
后退
顶部