Compartir a través de


core.sp_create_snapshot (Transact-SQL)

Se aplica a:SQL Server

Inserta una fila en la vista de almacenamiento core.snapshots de datos de administración. Se llama a este procedimiento cada vez que un paquete de carga empieza a cargar los datos en el almacén de administración de datos.

Convenciones de sintaxis de Transact-SQL

Sintaxis

core.sp_create_snapshot [ @collection_set_uid = ] 'collection_set_uid'
    , [ @collector_type_uid = ] 'collector_type_uid'
    , [ @machine_name = ] 'machine_name'
    , [ @named_instance = ] 'named_instance'
    , [ @log_id = ] log_id
    , [ @snapshot_id = ] snapshot_id OUTPUT
[ ; ]

Argumentos

[ @collection_set_uid = ] 'collection_set_uid'

GUID del conjunto de recopilación. @collection_set_uid es uniqueidentifier sin ningún valor predeterminado. Para obtener el GUID, consulte la vista dbo.syscollector_collection_sets en la msdb base de datos.

[ @collector_type_uid = ] 'collector_type_uid'

El GUID de un tipo de recopilador. @collector_type_uid es uniqueidentifier sin ningún valor predeterminado. Para obtener el GUID, consulte la vista dbo.syscollector_collector_types en la msdb base de datos.

[ @machine_name = ] 'machine_name'

Nombre del servidor en el que reside el conjunto de recopilación. @machine_name es sysname, sin ningún valor predeterminado.

[ @named_instance = ] 'named_instance'

Nombre de la instancia del conjunto de recopilación. @named_instance es sysname, sin ningún valor predeterminado.

[ @log_id = ] log_id

Identificador único que se asigna al registro de eventos de conjunto de recopilación en el servidor que recopiló los datos. @log_id es bigint sin ningún valor predeterminado. Para obtener el valor de log_id, consulte la vista dbo.syscollector_execution_log de la msdb base de datos.

[ @snapshot_id = ] snapshot_id

Identificador único de una fila que se inserta en la core.snapshots vista. @snapshot_id es int y se devuelve como OUTPUT.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

Cada vez que un paquete de carga comienza a cargar datos en el almacenamiento de datos de administración, el componente en tiempo de ejecución del recopilador de datos llama a core.sp_create_snapshot.

Este procedimiento comprueba si:

  • El collection_set_uid coincide con una entrada existente en la core.source_info_internal tabla.

  • El collector_type_uid coincide con una entrada existente en la core.supported_collector_types vista.

Si alguna de las comprobaciones anteriores no es correcta, se produce un error en el procedimiento y se devuelve un error.

Permisos

Requiere la pertenencia al rol fijo de base de datos mdw_writer (con permiso EXECUTE).

Ejemplos

En el siguiente ejemplo se crea una instantánea para el conjunto de recopilación Uso de disco, se agrega al almacén de administración de datos y se devuelve al identificador de la instantánea. En este ejemplo se usa la instancia predeterminada.

USE <management_data_warehouse>;
DECLARE @snapshot_id int;
EXEC core.sp_create_snapshot
    @collection_set_uid = '7B191952-8ECF-4E12-AEB2-EF646EF79FEF',
    @collector_type_uid = '302E93D1-3424-4BE7-AA8E-84813ECF2419',
    @machine_name = '<computername>',
    @named_instance = 'MSSQLSERVER',
    @log_id = 11, -- ID of the log for the collection set
    @snapshot_id = @snapshot_id OUTPUT;