我为啥在程序中执行SQL2000数据库恢复的时候,老是提示数据库正在使用的错误?请看代码指点!
我为啥在程序中执行SQL2000数据库恢复的时候,老是提示数据库正在使用的错误?请看代码指点!以下是我的恢复数据库的代码.
if Edit2.Text= ' ' then
begin
Application.MessageBox( '未选择数据库备份的文件名。 ', '提示信息 ',MB_OK);
exit;
end;
try
try
Frmrefreh.Label1.Caption:= '正在进行数据库恢复,请稍等...... ';
Frmrefreh.Show;
Frmrefreh.Update;
Frmrefreh.Refresh;
Query1.close;
Query1.sql.Text:= 'use master ';
Query1.execsql;
Query1.close;
Query1.sql.Text:= 'alter database power-db set offline with rollback immediate ';
Query1.execsql;
Query1.close;
Query1.sql.text:= 'Restore DataBase power-db from DISK= ' ' '+Edit2.Text+ ' ' ' with Replace ';
Query1.execsql;
Query1.close;
Query1.sql.Text:= 'alter database power-db set online with rollback immediate ';
Query1.execsql;
Query1.close;
Query1.sql.Text:= 'use power-db ';
Query1.execsql;
finally
Frmrefreh.Hide;
end;
Application.MessageBox( '数据库恢复完毕。 ', '提示信息 ',MB_OK);
except
Application.MessageBox( '数据库恢复失败,请检查所选恢复文件是否正确。 '+#13+ '关闭其它应用程序,必要时重新启动计算机,然后重新恢复。 ', '提示信息 ',MB_OK);
end;
[解决办法]
http://www.80diy.com/home/20020813/09/935789.html
是DELPHI的吧,
另外开一个CONNECTION就可以了,在同一个CONNECTION中如果有其他数据库操作的话就就会有冲突的。
[解决办法]
呵呵,当然会了,你一个数据连接正在使用
要先关闭这个连接,再开一个