共用方式為


Database.Shrink 方法

Shrinks the database.

命名空間:  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
    An Int32 value that specifies how much to reduce the database in percent.

備註

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 AdventureWorks2012 database.
Dim db As Database
db = srv.Databases("AdventureWorks2012")

'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("AdventureWorks2012")

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

$db.TruncateLog()

請參閱

參考

Database 類別

Microsoft.SqlServer.Management.Smo 命名空間

其他資源

使用資料庫物件

DBCC SHRINKDATABASE (Transact-SQL)

壓縮資料庫

CREATE DATABASE (Transact-SQL)