| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1151 人关注过本帖
标题:一个奇怪的问题
取消只看楼主 加入收藏
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
一个奇怪的问题
一个程序,已经用了几年了,一直没问题,今天突然报错

临时表不能被修改,因为它包含了未保存的记录

出错语句:update a set a.字段1=b.字段1 FROM 表1 a,表2 b where a.id=b.id
表1和表2都是cursor,非只读,内容是正常的,字段没问题

这么多年,还是头回见到这个错误

请教各位,这是哪里出了问题?

[此贴子已经被作者于2023-5-4 17:38编辑过]

搜索更多相关主题的帖子: 字段 where FROM cursor set 
2023-05-04 17:34
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用吹水佬在2023-5-4 18:13:57的发言:

或者试试先执行FLUSH,如:
FLUSH IN "表1"
FLUSH IN "表2"


还是老样子
2023-05-04 18:23
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用吹水佬在2023-5-4 18:10:47的发言:

表1或表2有无同时用在其他地方(如控件的数据源)

表1是一个grid的数据源,表2是新生成的cursor
2023-05-04 18:24
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用sdta在2023-5-4 18:38:39的发言:

同名临时表未关闭?

cursor如果同名的话,会覆盖原来的内容
2023-05-04 18:40
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用schtg在2023-5-4 18:15:33的发言:

可能其他冲突所致吧

不清楚啊
2023-05-04 18:40
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用吹水佬在2023-5-4 18:10:47的发言:

表1或表2有无同时用在其他地方(如控件的数据源)

重新生成了cursor,暂时解除grid的数据源指定,现在没事了

但在没事之前,还出现另一句程序出现同样的错误,但后来又没事了

感谢吹版

但奇怪的是,一直都是这么用,很长时间了也没问题啊,怎么今天突然出现了
2023-05-04 18:43
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用gs2536785678在2023-5-4 18:02:50的发言:

我从来就没有用过临时表
你修改成正式表一定能解决。


我这个系统,5年多了,订单记录至今4802W条,对应的作业数据也是相同的量级,其他的表就不算了,客户端除了一个数据字典(300+记录)是正式表,其他全部都是临时表,正式数据全部在服务器上
2023-05-04 19:12
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用shizi0在2023-5-4 23:14:19的发言:

可能与临时表建索引、绑定的对象Grid允许insert之类有关系,总之,应该是你最近改了其他对象什么地方,但你没意识到跟临时表有关。

感谢回复。
这个程序已经好久没动过了,天天都用,而且上午还在用,下午就出现问题了,挺怪的
2023-05-05 07:55
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用bbschf在2023-5-21 05:25:05的发言:

你有其它地方在使用此表


这个表只在当前表单中一个grid里用,数据是从数据库下载的,所以也没有其他表单同时使用的问题
2023-05-21 07:39
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1068
专家分:2607
注 册:2015-12-30
收藏
得分:0 
以下是引用bbschf在2023-5-21 09:44:21的发言:

 我搞的临表,在其他在方引用 的多,mousedown,click及其他的地方用timer事件等 ,正常使用没问题,就是不能监听,一监听就提示只读

grid的事件里肯定会涉及这个表。
我是喜欢把功能做的相对独立,这样维护和升级比较方便,所以就算是可以重复使用的表,在每个表单中都是要单独下载数据的
另外,你说的只读是不是要在生成临时表的时候指定一下可读写?
2023-05-21 10:47
快速回复:一个奇怪的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016451 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved