怎样写access数据库的备份、还原和压缩SQL语句?(20分)

  • 主题发起人 主题发起人 wxmlj
  • 开始时间 开始时间
W

wxmlj

Unregistered / Unconfirmed
GUEST, unregistred user!
初学,怎样写access数据库的备份、还原和压缩SQL语句?
 
我也是碰到了这个问题,我不会写
要是有哪位高手给予指点
我后来是用*.txt作为备份的数据源的
 
我现在是用sql的备份
a1.Active:=true;
adodm.cback.CommandText:='backup database yd to disk=''d:/Program Files/Microsoft SQL Server/MSSQL/BACKUP/yd.back''';
try
adodm.cback.Execute;
 
怎么没有人会吗?一条语句阿!
 
对access数据库维护
{***************************************************************
*

* Unit Name: unAccessTools

* Purpose : Provide tools to compact and repair Access database.

*

****************************************************************}

unit unAccessTools;

interface

uses Sysutils,ComObj,Dialogs;

function DaoActive(var DaoObject:OleVariant):Boolean;

function DaoCompactDB(const FileName:string):Boolean;

function DaoRepairDB(const FileName:string):Boolean;

implementation

function DaoActive(var DaoObject:OleVariant):Boolean;

begin

Result:=False;

try

DaoObject:=GetActiveOleObject('DAO.DBEngine.36');

Result:=True;

except

try

DaoObject:=CreateOleObject('DAO.DBEngine.36');

Result:=True;

except

DaoObject:=Null;

end;

end;

end;

//压缩Access数据库

function DaoCompactDB(const FileName:string):Boolean;

var

db:OleVariant;

TempFile:string;

begin

Result:=False;

try

if not DaoActive(db) then

Exit;

try

TempFile:=ExtractFilePath(FileName)+'msaTemp.mdb';

db.CompactDatabase(FileName,TempFile);

DeleteFile(FileName);

RenameFile(TempFile,FileName);

Result:=True;

except

on E:EOleException do

ShowMessage(E.Message);

end

finally

db:=Unassigned;

end;

end;

//修复Access数据库

function DaoRepairDB(const FileName:string):Boolean;

var

db:OleVariant;

begin

Result:=False;

try

if not DaoActive(db) then

Exit;

try

db.RepairDatabase(FileName);

Result:=True;

except

on E:EOleException do

ShowMessage(E.Message);

end

finally

db:=Unassigned;

end;

end;

end.
 
怎么样进行备份和还原呢?直接拷贝是一个办法吗?有没有其它专门备份和还原的语句呢?
 
access的备份用拷贝就可以了因为他的整个库就是一个文件,copyfile(。。。)
我就是这么做的:)
 
没错,Access最好的备份方法就是Copy了[:)]
记着断开连接就行了
 
雪中漫步:
为什么我的copy语句可以执行但是不拷贝?
是这样写的吗(把数据库拷贝到c:/):
CopyFile('D:/ygboby/DataBase/YGBobydb.mdb','c:/',true);
 
CopyFile('D:/ygboby/DataBase/YGBobydb.mdb','c:/',false);
 
多谢!多谢!
 
后退
顶部