Delphi中怎么备份SQL数据库里的表?求方法
答案:2 悬赏:20 手机版
解决时间 2021-03-06 00:15
- 提问者网友:無理詩人
- 2021-03-05 08:44
Delphi中怎么备份SQL数据库里的表?求方法
最佳答案
- 五星知识达人网友:归鹤鸣
- 2021-03-05 09:30
//下面代码针对sqlserver的 Q是AdoQuery 组件
//备份
var sql:String;
begin
if (filename.Text='') then
begin
Application.MessageBox('请选择文件','提示',MB_ICONWARNING);
exit;
end;
sql:='BACKUP DATABASE "mao" TO DISK ='''+filename.Text+''' with init';
Q.SQL.Text:=sql;
q.ExecSQL;
Application.MessageBox('数据库备份成功','提示',MB_ICONWARNING);
end;
//还原
var sql:String;
begin
if (fname.Text='') then
begin
Application.MessageBox('请选择文件','提示',MB_ICONWARNING);
exit;
end;
Q.SQL.Text:='use master';
Q.ExecSQL;
sql:='RESTORE DATABASE "mao" FROM DISK='''+fname.Text+'''';
Q.SQL.Text:=sql;
q.ExecSQL;
Q.SQL.Text:='Use mao';
Q.ExecSQL;
Application.MessageBox('数据库还原成功','提示',MB_ICONWARNING);
//备份
var sql:String;
begin
if (filename.Text='') then
begin
Application.MessageBox('请选择文件','提示',MB_ICONWARNING);
exit;
end;
sql:='BACKUP DATABASE "mao" TO DISK ='''+filename.Text+''' with init';
Q.SQL.Text:=sql;
q.ExecSQL;
Application.MessageBox('数据库备份成功','提示',MB_ICONWARNING);
end;
//还原
var sql:String;
begin
if (fname.Text='') then
begin
Application.MessageBox('请选择文件','提示',MB_ICONWARNING);
exit;
end;
Q.SQL.Text:='use master';
Q.ExecSQL;
sql:='RESTORE DATABASE "mao" FROM DISK='''+fname.Text+'''';
Q.SQL.Text:=sql;
q.ExecSQL;
Q.SQL.Text:='Use mao';
Q.ExecSQL;
Application.MessageBox('数据库还原成功','提示',MB_ICONWARNING);
全部回答
- 1楼网友:往事隔山水
- 2021-03-05 09:49
var
qy: tadoquery;
begin
qy := tadoquery.create(nil);
qy.connectionstring := adoconnection1.connectionstring; //假设adoconnection1已设置连接到master数据库
qy.sql.add('select name from sysdatabases');
qy.open;
qy.first;
while not qy.eof do
begin
combobox1.items.add(qy.fieldbyname('name').asstring);
qy.next;
end;
qy.close;
qy.free;
end;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯