Megosztás a következőn keresztül:


sp_column_privileges_ex (Transact-SQL)

A következőkre vonatkozik:SQL Server

A megadott táblázat oszlopjogosultságait adja vissza a megadott összekapcsolt szerveren.

Transact-SQL szintaxis konvenciók

Szemantika

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' ]
[ ; ]

Arguments

[ @table_server = ] N'table_server'

A linkelt szerver neve, amelyhez információt kell visszaküldeni. @table_servera sysname, alapértelmezett nélkül.

[ @table_name = ] N'table_name'

A megadott oszlopot tartalmazó tábla neve. @table_name a sysname, alapértelmezettként NULL.

[ @table_schema = ] N'table_schema'

Az asztal sémája. @table_schema a sysname, alapértelmezett értékével NULL.

[ @table_catalog = ] N'table_catalog'

Az adatbázis neve, amelyben a megadott @table_name található. @table_catalog a sysname, alapértelmezetként NULL.

[ @column_name = ] N'column_name'

Az oszlop neve, amelyhez jogosultsági információkat lehet adni. @column_namea sysname, alapértelmezés NULL szerint (all common).

Eredményhalmaz

Az alábbi táblázat az eredményhalmaz oszlopait mutatja. A visszaadott eredményeket , TABLE_QUALIFIERTABLE_OWNER, TABLE_NAME, COLUMN_NAME, és PRIVILEGE.

Oszlop név Adattípus Description
TABLE_CAT sysname Táblázat kvalifikátor neve. Különböző adatbázis-alapú termékek háromrészes elnevezést támogatnak a táblákhoz (<qualifier>.<owner>.<name>). Az SQL Server esetében ez az oszlop az adatbázis nevét jelöli. Egyes termékekben ez a tábla adatbázis környezetének szervernevét képviseli. Ez a mező lehet NULL.
TABLE_SCHEM sysname Az asztaltulajdonos neve. Az SQL Server esetében ez az oszlop az adatbázis-felhasználó nevét jelöli, aki létrehozta a táblát. Ez a mező mindig értéket ad vissza.
TABLE_NAME sysname Tábla neve. Ez a mező mindig értéket ad vissza.
COLUMN_NAME sysname Oszlop neve, minden visszatért TABLE_NAME oszlophoz. Ez a mező mindig értéket ad vissza.
GRANTOR sysname Az adatbázis felhasználói neve, amely jogosultságot COLUMN_NAME kapott erre a felsorolt GRANTEE. Az SQL Serverben ez az oszlop mindig ugyanaz, mint a TABLE_OWNER. Ez a mező mindig értéket ad vissza.

Az GRANTOR oszlop lehet az adatbázis tulajdonosa (TABLE_OWNER) vagy az, akinek az adatbázis tulajdonosa a nyilatkozatban lévő WITH GRANT OPTION záradék GRANT használatával adott engedélyt.
GRANTEE sysname Az adatbázis felhasználói neve, amelyet COLUMN_NAME a felsorolt GRANTOR. Ez a mező mindig értéket ad vissza.
PRIVILEGE Varchar(32) Az egyik elérhető oszlopengedély. Az oszlopjogosultságok lehetnek az alábbi értékek egyike (vagy más értékek, amelyeket az adatforrás támogat a megvalósítás definiálásakor is):

SELECT = GRANTEE Le tudja kérni az oszlopok adatait.
INSERT = GRANTEE adatokat szolgáltathat ehhez az oszlophoz, amikor új sorokat (a GRANTEE) helyeznek be a táblázatba.
UPDATE = GRANTEE módosíthatja az oszlopban meglévő adatokat.
REFERENCES = GRANTEE hivatkozhat egy oszlopra egy idegen táblában egy elsődleges kulcs/idegen kulcs kapcsolatban. Az elsődleges kulcs/idegen kulcs kapcsolatokat táblázatkorlátokkal definiálják.
IS_GRANTABLE varchar(3) Jelzi, hogy engedélyezett-e GRANTEE más felhasználóknak is engedélyeket adni (gyakran "engedélyezett engedéllyel" néven emlegetik). Lehet IGEN, NEM vagy NULL. Az ismeretlen, vagyis NULL, érték olyan adatforrást jelent, ahol a "támogatás támogatással" nem alkalmazható.

Permissions

Engedély SELECT szükséges a sémához.

Példák

A következő példa adja vissza AdventureWorks2025 a táblázat oszlopjogosultsági adatait HumanResources.Department az adatbázisban a Seattle1 kapcsolt szerveren.

EXECUTE sp_column_privileges_ex
    @table_server = 'Seattle1',
    @table_name = 'Department',
    @table_schema = 'HumanResources',
    @table_catalog = 'AdventureWorks2022';