共用方式為


Server.SetDefaultInitFields 方法 (Boolean)

Specifies that all properties are fetched when objects are instantiated.

命名空間:  Microsoft.SqlServer.Management.Smo
組件:  Microsoft.SqlServer.Smo (在 Microsoft.SqlServer.Smo.dll 中)

語法

'宣告
Public Sub SetDefaultInitFields ( _
    allFields As Boolean _
)
'用途
Dim instance As Server 
Dim allFields As Boolean

instance.SetDefaultInitFields(allFields)
public void SetDefaultInitFields(
    bool allFields
)
public:
void SetDefaultInitFields(
    bool allFields
)
member SetDefaultInitFields : 
        allFields:bool -> unit
public function SetDefaultInitFields(
    allFields : boolean
)

參數

  • allFields
    型別:System.Boolean
    A Boolean value that specifies whether all the properties are fetched when objects are instantiated.If True, all the properties are fetched when objects are instantiated.If False, all objects are set to default behavior.

備註

SMO optimization allows only the minimum properties to be loaded when an object is created. When uninitialized properties are accessed, SMO makes individual requests to load the information from the instance of SQL Server. You can use this method to adjust which properties are initialized for an object when it is first created to further optimize performance.

範例

Visual Basic

'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")
'Assign the Table object type to a System.Type object variable.
Dim tb As Table
Dim typ As Type
tb = New Table
typ = tb.GetType
'Assign the current default initialization fields for the Table object type to a 
'StringCollection object variable.
Dim sc As StringCollection
sc = srv.GetDefaultInitFields(typ)
'Set the default initialization fields for the Table object type to the CreateDate property.
srv.SetDefaultInitFields(typ, "CreateDate")
'Retrieve the Schema, Name, and CreateDate properties for every table in AdventureWorks2012.
'Note that the improvement in performance can be viewed in SQL Profiler.
For Each tb In db.Tables
    Console.WriteLine(tb.Schema + "." + tb.Name + " " + tb.CreateDate)
Next
'Set the default initialization fields for the Table object type back to the original settings.
srv.SetDefaultInitFields(typ, sc)

PowerShell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2012")
$tb = new-object Microsoft.SqlServer.Management.Smo.Table
$typ = $tb.GetType()
$sc = $srv.GetDefaultInitFields($typ)
$srv.SetDefaultInitFields($typ, "CreateDate")
foreach ($tb in $db.Tables)
{
   Write-Host $tb.Schema,".",$tb.Name,".",$tb.CreateDate
}
$srv.SetDefaultInitFields($typ, $sc)

請參閱

參考

Server 類別

SetDefaultInitFields 多載

Microsoft.SqlServer.Management.Smo 命名空間

其他資源

設定屬性

呼叫方法

管理伺服器