Udostępnij za pośrednictwem


Metoda Server.SetDefaultInitFields (Boolean)

Określa, kiedy obiekty są pobierane wszystkie właściwości.

Przestrzeń nazw:  Microsoft.SqlServer.Management.Smo
Zestaw:  Microsoft.SqlServer.Smo (w Microsoft.SqlServer.Smo.dll)

Składnia

'Deklaracja
Public Sub SetDefaultInitFields ( _
    allFields As Boolean _
)
'Użycie
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
)

Parametry

  • allFields
    Typ: System.Boolean
    A Boolean wartość określająca, czy wszystkie właściwości są pobierane podczas wystąpienia są tworzone obiekty.
    Jeśli True, wszystkie właściwości są pobierane podczas wystąpienia są tworzone obiekty.
    Jeśli wartość False, wszystkie obiekty są zestaw do zachowania domyślnego.

Uwagi

Optymalizacja SMO umożliwia tylko minimalne właściwości mają być załadowane podczas tworzenia obiektu.Kiedy uzyskują właściwości niezainicjowanej SMO sprawia, że indywidualne żądania załadować informacji z wystąpienie SQL Server.Ta metoda umożliwia dostosowanie właściwości, które są inicjowane obiektu w chwili utworzenia dalszej optymalizacji wydajności.

Przykłady

Visual Basic

'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")
'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 AdventureWorks2008R2.
'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("AdventureWorks2008R2")
$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)