SetDefaultInitFields 메서드 (Type, Boolean)
지정한 유형의 개체가 인스턴스화될 때 모든 속성이 인출되도록 지정합니다.
네임스페이스: Microsoft.SqlServer.Management.Smo
어셈블리: Microsoft.SqlServer.Smo(Microsoft.SqlServer.Smo.dll)
구문
‘선언
Public Sub SetDefaultInitFields ( _
typeObject As Type, _
allFields As Boolean _
)
‘사용 방법
Dim instance As Server
Dim typeObject As Type
Dim allFields As Boolean
instance.SetDefaultInitFields(typeObject, _
allFields)
public void SetDefaultInitFields(
Type typeObject,
bool allFields
)
public:
void SetDefaultInitFields(
Type^ typeObject,
bool allFields
)
member SetDefaultInitFields :
typeObject:Type *
allFields:bool -> unit
public function SetDefaultInitFields(
typeObject : Type,
allFields : boolean
)
매개 변수
- typeObject
유형: System. . :: . .Type
개체 유형을 지정하는 Type 시스템 개체 값입니다.
- allFields
유형: System. . :: . .Boolean
개체가 인스턴스화될 때 모든 속성이 인출되는지 여부를 지정하는 Boolean 값입니다.
True이면 개체가 인스턴스화될 때 모든 속성이 인출됩니다.
False이면 모든 개체가 기본 동작으로 설정됩니다.
주의
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 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)