安装完sql2000后,如何安装数据库 ( 积分: 50 )

  • 主题发起人 主题发起人 fscdc4
  • 开始时间 开始时间
F

fscdc4

Unregistered / Unconfirmed
GUEST, unregistred user!
安装完sql2000后,如何安装数据库,我的代码是:
procedure TserverForm.restore5(file1:string);
var sqlstr,backup11,database1,restoretext,cur_dir:string;
begin
cur_dir:=getdir(); //取得当前目录
database1:='syjxc';
restoretext:='restore database syjxc from disk='+quotedstr(file1);
ADOQuery2.Connection.BeginTrans;
with ADOQuery2 do
begin
close;
sql.clear;
sql.Add('use master'); //设置当前数据库为master
sql.Add('ALTER DATABASE syjxc SET OFFLINE WITH ROLLBACK IMMEDIATE'); //分离数据库
sql.Add(restoretext); //还原数据库
sql.Add('ALTER DATABASE syjxc SET ONLINE WITH ROLLBACK IMMEDIATE'); //重新连接数据库
execsql;
end;
ADOQuery2.Connection.CommitTrans;
chdir(cur_dir); //恢复当前目录
end;
procedure TserverForm.cre_syjxc(db_name:string);
var sqlstr,backup11,database1:string;
//设置ADOQuery1链接数据库master,或动态链接
begin
SQLStr := 'select * from sysdatabases where name = '+ quotedStr(db_name);
with ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.add(SQLStr);
Open;
if ISEmpty then
begin
SQLStr := 'Create Database '+db_name;//具体可参考MSSql
Close;
SQL.Clear;
SQL.add(SQLStr);
ExecSQL;
end;
end;
end;
function TserverForm.getdir():string;//取当前目录
var CDir:string;
begin
setlength(CDir,144);
if GetCurrentdirectory(144,pchar(cdir))<>0 then
setlength(cdir,strlen(pchar(cdir)))
else
raiselastwin32error;
result:=CDir;
end;

procedure TserverForm.FormActivate(Sender: TObject);
var cur_dir,file1:string;
begin
cre_syjxc('syjxc'); //建立syjxc
cur_dir:=getdir();
file1:=cur_dir+'/数据库文件/syjxc';
showmessage('服务器安装完毕');
close;
end;
//数据库是当前目录下的 数据库文件/syjxc
程序运行的结果是 建立了syjxc数据库,但没有把 数据库文件/syjxc 还原到数据库syjxc中,请问代码有神么问题,为什么会数据库syjxc还原不了,青给出正确地代码
 
backup restore 配套。备份文件。
sp_dettachDb,ap_AttachDB 配套。mdf数据文件,ldf日志文件。
create database 也是mdf数据文件,ldf日志文件。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
479
import
I
后退
顶部