数据表在增加字段时总是出现table is busy,请大家指导,谢谢(100分)

  • 主题发起人 主题发起人 hzhuse
  • 开始时间 开始时间
H

hzhuse

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一数据表,active:=false;需要用时才open,用完后又close,并且在增加字段前已关闭
但我在执行命令:alter table data add hzh char(4)或者drop hzh时总是出现data table
is busy,试了很多次,都没有最终解决,希望大家帮忙。还有程序运行后,在没有执行其他
操作时,一切正常,但每次在执行其他一个窗体后就出现以上情况,这窗体中用到了data
但我在退出这一窗体时,已把它关闭。
 
是不是你那个窗体也有与此dataset相关。你先不创建此窗体试试
 
把delphi关了,再开试试
 
delphi有时候就是老出这些奇怪的问题,要不你可以将你所放置的相关控件
删掉,再加一次!
 
大家帮我吧,我实在想不出更好的办法,不知怎样才能避免这种错误
 
我也遇到过这样的问题,不过我的数据表是放在一个窗体上,close all后再改表结构OK
程序运行时出现table is busy将delphi关闭再开又OK。我是新手,具体原因也不知道。
 
到SQL Explorer那里,把你的哪个数据库别名关掉!
 
重新打开delphi试试
 
你将表DATA改名试一试!可能是你用了一些系统保留字。
 
有时在调试程序时,我也常碰到这个情况,
不过常用的方法有:
1。关闭delphi,然后重新打开;
2。要就重新启动操作系统;
3。你也可以把这部分单独新建一个项目来调试!
当然一定要保证表是关闭的,多试试看!
 
应该是你没有关表的问题。
检查那个窗体里所以Open表的地方,用完后马上Close。
 
可能是在进程中还没有关掉!
 
是不是你在别的程序中还有和这个表的关联,比如SQL Explorer等等
 
你肯定只有一个table/tquery组件在掉用它吗?如果是的话很正常,你应该关掉所有与之有关的
数据哭连接。
 
谢谢大家,我终于发现,我在执行sql语句时用execSQL,而我的SQL语句是
select .... from table,所以出现以上错误,后active:=true后一切正常,希望大家
也注意execsqlt 和active:=true的不同,谢谢
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
回复
0
查看
795
爱音乐的孩子是小白
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部