用新的数据库覆盖旧的数据库,我将Table1.Active设成False了为什麽还报错?(50分)

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

shuoshuoshuo

Unregistered / Unconfirmed
GUEST, unregistred user!
用新的数据库覆盖旧的数据库,我将Table1.Active设成False了为什麽还报错?
 
错误信息是什么?
 
可能是写错误!
 
datasource.autoedit:=true;
table1.active:=true;
你将它置为FALES,不让写,新文件如何写入旧文件.
 
table1 控件虽然 close 了,但是为了性能,可能bde还打开着它呢
如果程序退出可能就可以了
 
在不行就关掉Delphi。
 
数据库怎么跟table有关系了?
你close table 没用的。断开数据库的所有连接。
 
程序员的绝招
重启动
 
to wrench,
要是程序的功能是覆盖,每次重启动还卖出去么?
to shuoshuoshuo,
如果是自己调试的时候出现这种问题,你可以看我以前问的问题,不过除了
重启动,还多了个注销
 
用BatchMove试试。
 
几种情况会出现上述问题:
1、在Design时期,你的OldTable的Active是打开的(这时Delphi也作为一个
程序占用着该文件);
2、在IDE环境下调试的时候,程序出现问题后被强制回到IDE(这时在程序中
打开的文件的句柄没有释放);
3、OldTable对应的文件属性为只读;

解决方法:
1、关闭Design时期的OldTable,在程序中打开它。
2、退出所有使用BDE的程序(包括DataBase Desktop等)
3、修改文件属性
 
接受答案了.
 
后退
顶部