Поделиться через


Метод Shrink

Сжимает базу данных.

Пространство имен:  Microsoft.SqlServer.Management.Smo
Сборка:  Microsoft.SqlServer.Smo (в Microsoft.SqlServer.Smo.dll)

Синтаксис

'Декларация
Public Sub Shrink ( _
    percentFreeSpace As Integer, _
    shrinkMethod As ShrinkMethod _
)
'Применение
Dim instance As Database
Dim percentFreeSpace As Integer
Dim shrinkMethod As ShrinkMethod

instance.Shrink(percentFreeSpace, shrinkMethod)
public void Shrink(
    int percentFreeSpace,
    ShrinkMethod shrinkMethod
)
public:
void Shrink(
    int percentFreeSpace, 
    ShrinkMethod shrinkMethod
)
member Shrink : 
        percentFreeSpace:int * 
        shrinkMethod:ShrinkMethod -> unit 
public function Shrink(
    percentFreeSpace : int, 
    shrinkMethod : ShrinkMethod
)

Параметры

  • percentFreeSpace
    Тип: System. . :: . .Int32
    Значение типа Int32, определяющее величину сокращения базы данных в процентах.

Замечания

You can use the Shrink method to reduce the size of the files that make up the database manually. The data is stored more densely and unused pages are removed. Alternatively, you can shrink the database automatically at intervals by setting the AutoShrink option.

Примеры

VB

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server

'Reference the AdventureWorks2008R2 database.
Dim db As Database
db = srv.Databases("AdventureWorks2008R2")

'Shrink the database without truncating the log.
db.Shrink(20, ShrinkMethod.NoTruncate)

'Truncate the log.
db.TruncateLog()

PowerShell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2008R2")

$db.Shrink(20, [Microsoft.SqlServer.Management.Smo.ShrinkMethod]'NoTruncate')

$db.TruncateLog()