修改其中的3個引數(資料庫名,日誌檔名,和目標日誌檔案的大小),執行即可
set nocount ondeclare
@logicalfilename
sysname,
@maxminutes
int,
@newsize
intuse tablename --
要操作的資料庫名
select
@logicalfilename='
tablename_log
', --
日誌檔名
@maxminutes
=10, --
limit on time allowed to wrap log.
@newsize=1
--你想設定的日誌檔案的大小(m)
--setup / initialize
declare
@originalsize
intselect
@originalsize
=size
from
sysfiles
where name =
@logicalfilename
select
'original size of '+
db_name() +
'log is '+
convert(varchar(30),@originalsize) +
'8k pages or '+
convert(varchar(30),(@originalsize*8
/1024)) +'mb
'from
sysfiles
where name =
@logicalfilename
create
table
dummytrans
(dummycolumn
char (8000) not
null
) declare
@counter
int,
@starttime
datetime
, @trunclog
varchar(255
) select
@starttime
=getdate
(),
@trunclog='
backup log '+
db_name() +
'with truncate_only
'dbcc shrinkfile (@logicalfilename, @newsize
) exec (@trunclog
) --
wrap the log if necessary.
while
@maxminutes
>
datediff (mi, @starttime, getdate()) --
time has not expired
and@originalsize
= (select size from sysfiles where name =
@logicalfilename
) and (@originalsize*8
/1024) >
@newsize
begin
--outer loop.
select
@counter=0
while ((@counter
<
@originalsize
/16) and (@counter
<
50000
)) begin
--update
insert dummytrans values ('
fill log')
delete
dummytrans
select
@counter
=@counter+1
endexec (@trunclog
) end
select
'final size of '+
db_name() +
'log is '+
convert(varchar(30),size) +
'8k pages or '+
convert(varchar(30),(size*8/
1024)) +'mb
'from
sysfiles
where name =
@logicalfilename
drop
table
dummytrans
set nocount off
SQL Server 常用語句使用詳解
說明 用於從資料庫中選取資料。結果被儲存在乙個結果表中,稱為結果集。使用詳解 sql server 使用select語句選擇 資料 指定列資料,所有列資料 說明 用於提取那些滿足指定條件的記錄。語法 select from table name where column name operator ...
SQL Server清除日誌語句
sql1 清除日誌 2 declare logicalfilename sysname,3 maxminutes int,4 newsize int 5 use database 要操作的資料庫名 6 select logicalfilename database log 日誌檔名 7 maxmin...
sqlserver常用語句
刪除主鍵 alter table 表名 drop constraint 主鍵名 新增主鍵 alter table 表名 add constraint 主鍵名 primary key 欄位名1,欄位名2 新增非聚集索引的主鍵 alter table 表名 add constraint 主鍵名 prim...