sys.sp_cdc_help_change_data_capture (Transact-SQL)
Se aplica a: SQL Server
Devuelve la configuración de captura de datos del cambio para cada tabla habilitada para la captura de datos del cambio en la base de datos actual. Se pueden devolver hasta dos filas para cada tabla de origen, una fila para cada instancia de captura. La captura de datos modificados no está disponible en todas las ediciones de SQL Server. Para obtener una lista de las características admitidas por las ediciones de SQL Server, consulte Ediciones y características admitidas de SQL Server 2022.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sys.sp_cdc_help_change_data_capture
[ [ @source_schema = ] 'source_schema' ]
[ , [ @source_name = ] 'source_name' ]
[ ; ]
Argumentos
[ @source_schema = ] 'source_schema'
Nombre del esquema al que pertenece la tabla de origen. @source_schema es sysname, con un valor predeterminado de NULL
. Cuando se especifica @source_schema , también se debe especificar @source_name .
Si no es null, @source_schema debe existir en la base de datos actual.
Si @source_schema no es NULL, @source_name también debe ser distinto de null.
[ @source_name = ] 'source_name'
El nombre de la tabla de origen. @source_name es sysname, con un valor predeterminado de NULL
. Cuando se especifica @source_name , también se debe especificar @source_schema .
Si no es null, @source_name debe existir en la base de datos actual.
Si @source_name no es NULL, @source_schema también debe ser distinto de null.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Conjunto de resultados
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
source_schema |
sysname | Nombre del esquema de la tabla de origen. |
source_table |
sysname | Nombre de la tabla de origen. |
capture_instance |
sysname | Nombre de la instancia de captura. |
object_id |
int | Id. de la tabla de cambios asociada a la tabla de origen. |
source_object_id |
int | Id. de la tabla de origen. |
start_lsn |
binary(10) | Número de flujo de registro (LSN) que representa el extremo bajo para consultar la tabla de cambio. NULL = no se ha establecido el punto de conexión bajo. |
end_lsn |
binary(10) | LSN que representa el extremo alto para consultar la tabla de cambio. En SQL Server 2012 (11.x), esta columna siempre NULL es . |
supports_net_changes |
bit | Se habilita la compatibilidad del cambio de red. |
has_drop_pending |
bit | No se usa en SQL Server 2012 (11.x). |
role_name |
sysname | Nombre del rol de base de datos utilizado para controlar el acceso a los datos de cambio. NULL = no se usa un rol. |
index_name |
sysname | Nombre del índice utilizado para identificar de forma exclusiva las filas en la tabla de origen. |
filegroup_name |
sysname | Nombre del grupo de archivos en que reside la tabla de cambio. NULL = la tabla de cambio está en el grupo de archivos predeterminado de la base de datos. |
create_date |
datetime | Fecha en que se habilitó la instancia de captura. |
index_column_list |
nvarchar(max) | Lista de las columnas de índice utilizada para identificar de forma exclusiva las filas en la tabla de origen. |
captured_column_list |
nvarchar(max) | Lista de las columnas de origen capturadas. |
Comentarios
Cuando @source_schema y @source_name el valor predeterminado de NULL
, o se establecen explícitamente , NULL
este procedimiento almacenado devuelve información para todas las instancias de captura de base de datos a las que el autor de la llamada tiene acceso SELECT. Cuando @source_schema y @source_name no son NULL, solo se devuelve información sobre la tabla con nombre habilitada específica.
Permisos
Cuando @source_schema y @source_name son NULL
, la autorización del autor de la llamada determina qué tablas habilitadas se incluyen en el conjunto de resultados. Los autores de las llamadas deben tener el permiso SELECT en todas las columnas capturadas de la instancia de captura y también ser miembros de cualquier rol de acceso definido para la información de la tabla que se va a incluir.
Los miembros del rol de base de datos db_owner pueden ver información sobre todas las instancias de captura definidas. Cuando se solicita información para una tabla habilitada concreta, para la tabla con nombre se aplican los mismos criterios de pertenencia y SELECT.
Ejemplos
A Devolver información de configuración de captura de datos modificados para una tabla especificada
El siguiente ejemplo devuelve la configuración de captura de datos del cambio para la tabla HumanResources.Employee
.
USE AdventureWorks2022;
GO
EXECUTE sys.sp_cdc_help_change_data_capture
@source_schema = N'HumanResources',
@source_name = N'Employee';
GO
B. Devolver información de configuración de captura de datos modificados para todas las tablas
En el ejemplo siguiente se devuelve información de configuración para todas las tablas habilitadas en la base de datos que contiene los datos de cambios a los que el autor de las llamadas tiene autorizado el acceso.
USE AdventureWorks2022;
GO
EXECUTE sys.sp_cdc_help_change_data_capture;
GO