X
xiaoxiao8372
Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.SpeedButton2Click(Sender: TObject);
var A,B:shortstring;
begin
A:='provider=SQLOLEDB.1;Persist Security Info=False;';
B:='User ID=sa;Initial Catalog=master';
adoconnection1.Close;
adoconnection1.ConnectionString:=A+B;
with adoquery1 do
begin
close;
sql.Clear;
sql.Text:='select * from systypes' ;
execsql;
end;
if s_name='' then
begin
showmessage('请选择路径');
exit;
end;
try
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('restore database text from disk='''+ s_name +'''');
execsql;
end;
showmessage('恢复成功');
except
showmessage('恢复失败');
end;
end;
以上是我的恢复按钮。在SQL中是不允许对当前使用的数据库进行恢复的。可是我这里先是连上的master库啊,并不算是对当前数据库的恢复吧。可是一运行,还是说:“不能对当前数据库操作,没有排它访问树根”。我就晕了,到底该如何做呢。。
var A,B:shortstring;
begin
A:='provider=SQLOLEDB.1;Persist Security Info=False;';
B:='User ID=sa;Initial Catalog=master';
adoconnection1.Close;
adoconnection1.ConnectionString:=A+B;
with adoquery1 do
begin
close;
sql.Clear;
sql.Text:='select * from systypes' ;
execsql;
end;
if s_name='' then
begin
showmessage('请选择路径');
exit;
end;
try
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('restore database text from disk='''+ s_name +'''');
execsql;
end;
showmessage('恢复成功');
except
showmessage('恢复失败');
end;
end;
以上是我的恢复按钮。在SQL中是不允许对当前使用的数据库进行恢复的。可是我这里先是连上的master库啊,并不算是对当前数据库的恢复吧。可是一运行,还是说:“不能对当前数据库操作,没有排它访问树根”。我就晕了,到底该如何做呢。。