你用SQL Monitor跟踪一下,是由什么原因导致出错了。Cache出错,往往都是SQL语句出了问题。
解决方案 »
- 系统托盘图标在进程结束后不自动消失问题,急求解答......请高手帮忙谢谢!
- 如何让窗体的最大化、最小化、关闭按钮消失,最好是这一行(应该叫系统栏吧)全消失,还有怎么让
- 求实时更新方案....(内详)
- 请问做DLL的时候,一般在什么情况下使用动态调用比较好,在什么情况下使用静态调用比较好?
- 有关pos系统的问题
- 关于窗口的移动和缩放
- 50分的问题:ClientDataset的SQL语句如何实现?
- 请问这条Oracle语句能够转成SQL SERVER的吗?
- oracle中數據庫的blob字段保存的exe文件,在下載時出錯. 就時這一條語句有問題;BS.SaveToFile(sFileName);
- 关于日期分离的问题?
- taxi(游少爷)进来看看:
- 关于动态生成TREEVIEW的问题!
chechy的方法值得一试! 15分
你的错误是"end of table"吗?如果是,看你的“出错条件”
1。a.对一个表先删除掉一条或若干条记录,b.然后再增加一条不符合要求的记录。c.此时应用ApplyUpdates肯定会报错。d.当回去将刚才增加的记录改正再应用ApplyUpdates时,程序还是报错。对表的修改不能保存
在步骤c和d之间刷新表(dataset.refresh),就OK了
我试着在c和d之间加入了一条dataset.refresh 可是程序不能执行这句命令。
我又试着加入Query.close;
Query.open;
此时,数据集又进入了删除之前的状态。
另外,对于缓存更新,不知道数据是如何存放的?我猜出错的原因可能是:删除记录是删的缓存中的记录,当增加一条错误记录进入缓存后进行ApplyUpdates。程序报错,这时缓存中的数据存放已经错乱(不好意思,找不到专业的词了),如果再将原来的错误项改正再ApplyUpdates时,缓存不知道此项该保存到哪里了