8KpagesorCONVERTVARCHAR30Origi
alSize81024MBFROMsysfilesWhere
ameLogicalFileNameCreateTABLEDummyTra
s
fDummyColum
char8000
ot
ull
DECLARECou
terINTStartTimeDATETIMETru
cLogVARCHAR255
SelectStartTimeGETDATETru
cLogBACKUPLOGdb_
ameWITHTRUNCATE_ONLY
DBCCSHRINKFILELogicalFileNameNewSizeEXECTru
cLogWrapthelogif
ecessaryWHILEMaxMi
utesDATEDIFFmiStartTimeGETDATEtimehas
otexpired
ANDOrigi
alSizeSelectsizeFROMsysfilesWhere
ameLogicalFileNameANDOrigi
alSize81024NewSizeBEGINOuterloopSelectCou
ter0WHILECou
terOrigi
alSize16ANDCou
ter50000BEGINupdate
I
sertDummyTra
sVALUESFillLogDeleteDummyTra
sSelectCou
terCou
ter1ENDEXECTru
cLogENDSelectFi
alSizeofdb_
ameLOGisCONVERTVARCHAR30size8KpagesorCONVERTVARCHAR30size81024MBFROMsysfilesWhere
ameLogicalFileNameDropTABLEDummyTra
sSETNOCOUNTOFFQQ2919113208、说明:更改某个表execsp_cha
geobjectow
ertable
amedbo
9、存储更改全部表
CreatePROCEDUREdboUser_Cha
geObjectOw
erBatchOldOw
erasNVARCHAR128NewOw
erasNVARCHAR128AS
DECLARENameasNVARCHAR128
fDECLAREOw
erasNVARCHAR128DECLAREOw
erNameasNVARCHAR128
DECLAREcurObjectCURSORFORselectName
ame
Ow
eruser_
ameuidfromsysobjectswhereuser_
ameuidOldOw
erorderby
ame
OPENcurObjectFETCHNEXTFROMcurObjectINTONameOw
erWHILEFETCH_STATUS0BEGINifOw
erOldOw
erbegi
setOw
erNameOldOw
errtrimNameexecsp_cha
geobjectow
erOw
erNameNewOw
ere
dselect
ameNewOw
erOldOw
er
FETCHNEXTFROMcurObjectINTONameOw
erEND
closecurObjectdeallocatecurObjectGO
10、SQLSERVER中直接循环写入数据declareii
tseti1whilei30begi
i
serti
totestuseridvaluesisetii1e
d
fr