sp_column_privileges_ex (Transact-SQL)
Se aplica a: SQL Server
Devuelve privilegios de columna para la tabla especificada del servidor vinculado indicado.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_column_privileges_ex
[ @table_server = ] N'table_server'
[ , [ @table_name = ] N'table_name' ]
[ , [ @table_schema = ] N'table_schema' ]
[ , [ @table_catalog = ] N'table_catalog' ]
[ , [ @column_name = ] N'column_name' ]
[ ; ]
Argumentos
[ @table_server = ] N'table_server'
Nombre del servidor vinculado para el que se va a devolver información. @table_server es sysname, sin ningún valor predeterminado.
[ @table_name = ] N'table_name'
Nombre de la tabla que contiene la columna especificada. @table_name es sysname, con un valor predeterminado de NULL
.
[ @table_schema = ] N'table_schema'
Esquema de tabla. @table_schema es sysname, con un valor predeterminado de NULL
.
[ @table_catalog = ] N'table_catalog'
Nombre de la base de datos en la que reside el @table_name especificado. @table_catalog es sysname, con un valor predeterminado de NULL
.
[ @column_name = ] N'column_name'
Nombre de la columna para la que se va a proporcionar información de privilegios. @column_name es sysname, con un valor predeterminado de NULL
(todo común).
Conjunto de resultados
En la siguiente tabla se muestran las columnas del conjunto de resultados. Los resultados devueltos se ordenan mediante TABLE_QUALIFIER
, TABLE_OWNER
, TABLE_NAME
, COLUMN_NAME
, y PRIVILEGE
.
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
TABLE_CAT |
sysname | Nombre del calificador de la tabla. Varios productos de DBMS admiten la nomenclatura de tres partes para tablas (<qualifier>.<owner>.<name> ). En SQL Server, esta columna representa el nombre de la base de datos. En algunos productos, representa el nombre de servidor del entorno de base de datos de la tabla. Este campo puede ser NULL . |
TABLE_SCHEM |
sysname | Nombre del propietario. En SQL Server, esta columna representa el nombre del usuario de la base de datos que creó la tabla. Este campo siempre devuelve un valor. |
TABLE_NAME |
sysname | Nombre de la tabla. Este campo siempre devuelve un valor. |
COLUMN_NAME |
sysname | Nombre de columna, para cada columna del TABLE_NAME devuelto. Este campo siempre devuelve un valor. |
GRANTOR |
sysname | Nombre de usuario de la base de datos a la que se concedió permisos para COLUMN_NAME la lista GRANTEE . En SQL Server, esta columna siempre es la misma que .TABLE_OWNER Este campo siempre devuelve un valor.La GRANTOR columna puede ser el propietario de la base de datos (TABLE_OWNER ) o alguien al que el propietario de la base de datos haya concedido permisos mediante la WITH GRANT OPTION cláusula de la GRANT instrucción . |
GRANTEE |
sysname | Nombre de usuario de base de datos al que se le concedieron permisos en este COLUMN_NAME objeto por el enumerado GRANTOR . Este campo siempre devuelve un valor. |
PRIVILEGE |
varchar(32) | Uno de los permisos de columna disponibles. Los permisos de columna pueden ser uno de los valores siguientes (u otros valores compatibles con el origen de datos cuando se define la implementación):SELECT = GRANTEE puede recuperar datos de las columnas.INSERT = GRANTEE puede proporcionar datos para esta columna cuando se insertan nuevas filas (por ) GRANTEE en la tabla.UPDATE = GRANTEE puede modificar los datos existentes en la columna.REFERENCES = GRANTEE puede hacer referencia a una columna de una tabla externa en una relación de clave principal o clave externa. Las relaciones entre clave principal y clave externa se definen con restricciones de tabla. |
IS_GRANTABLE |
varchar(3) | Indica si GRANTEE se permite conceder permisos a otros usuarios (a menudo denominado "conceder con concesión"). Puede ser SÍ, NO o NULL . Un valor desconocido o NULL , hace referencia a un origen de datos en el que no se aplica la "concesión con concesión". |
Permisos
Es necesario contar con un permiso de tipo SELECT
sobre el esquema.
Ejemplos
En el siguiente ejemplo se devuelve información de privilegios de columna de la tabla HumanResources.Department
de la base de datos AdventureWorks2022
del servidor vinculado Seattle1
.
EXEC sp_column_privileges_ex
@table_server = 'Seattle1',
@table_name = 'Department',
@table_schema = 'HumanResources',
@table_catalog = 'AdventureWorks2022';