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


Метод PrefetchObjects (Type)

Упреждающая выборка объектов базы данных указанного типа.

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

Синтаксис

'Декларация
Public Sub PrefetchObjects ( _
    objectType As Type _
)
'Применение
Dim instance As Database
Dim objectType As Type

instance.PrefetchObjects(objectType)
public void PrefetchObjects(
    Type objectType
)
public:
void PrefetchObjects(
    Type^ objectType
)
member PrefetchObjects : 
        objectType:Type -> unit 
public function PrefetchObjects(
    objectType : Type
)

Параметры

  • objectType
    Тип: System. . :: . .Type
    Объект Type, ограничивающий типы объектов, для которых будет выполняться упреждающая выборка.

Замечания

This enables collections to be fully populated with objects by making one network trip to the instance of SQL Server. Prefetching is an optimization used when the whole collection of objects is required.

This method uses the default initialization of fields for prefetching database objects.

Примеры

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")

'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

'Set scripting options.
Dim so As ScriptingOptions
so = New ScriptingOptions
so.AllowSystemObjects = True

'Prefetch all Table type objects, including system objects.
db.PrefetchObjects(typ, so)

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()

$so = New-Object Microsoft.SqlServer.Management.Smo.ScriptingOptions
$so.AllowSystemObjects = $TRUE

$db.PrefetchObjects($typ, $so)

Write-Host $db.GetTransactionCount()