来自:DragonPC_???, 时间:2001-11-12 17:03:00, ID:725271
http://www.delphi32.co.yu/preuzeti_tekstovi/exploiting_sql_server_1.htm
http://www.delphi32.co.yu/preuzeti_tekstovi/exploiting_sql_server_2.htm
我使用SQL Server DMO对象对SQL Server Lof文件进行压缩,参看就不是很清楚了,需要老
兄自己研究研究。
uses
SQLDMO_TLB ;
var
svr : _SQLServer;
dbs : Databases ;
db : _Database ;
tlog : TransactionLog ;
logs : LogFiles ;
log : _LogFile ;
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer ;
p : ProPerty_ ;
begin
svr := CoSQLServer.Create() ;
svr.Connect('BRUCE', 'sa', EmptyParam);
// 连接到SQL Server数据库
// 参数: _SQLServer.Connect(&Server Name&, &User name&, &password&
;
dbs := svr.Databases ;
for i := 1 to dbs.Count do
begin
if (dbs.ItemByID(i).Name = 'DFW') then
begin
db := dbs.ItemByID(i) ;
break ;
end;
end;
// 从SQL Server中选择名字为DFW的Database对象 - db
tlog := db.TransactionLog ;
logs := tlog.LogFiles ;
// 从_Database对象获得LogFiles对象
for i := 1 to logs.Count do
begin
if (logs.Item(i).Name = 'DFW_log') then
begin
log := logs.Item(i) ;
break ;
end;
end;
// 从LogFiles对象中选取名为DFW_log的_LogFile对象 - log
log.Shrink(10, EmptyParam);
// 将Log文件压缩到10M以下
svr := nil ;
end;