Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL databáze v Microsoft Fabric
Vrací seznam oprávnění k tabulce (například INSERT, DELETE, UPDATE, SELECT, REFERENCES) pro zadanou tabulku nebo tabulky.
Syntaxe
sp_table_privileges
[ @table_name = ] N'table_name'
[ , [ @table_owner = ] N'table_owner' ]
[ , [ @table_qualifier = ] N'table_qualifier' ]
[ , [ @fUsePattern = ] fUsePattern ]
[ ; ]
[ @table_name = ] 'Ntable_name'
Tabulka sloužila k vrácení informací z katalogu. @table_name je nvarchar(384), bez výchozího nastavení. Je podporováno porovnávání vzorů divoké karty.
[ @table_owner = ] N'table_owner'
Vlastník tabulky se používal k vracení informací z katalogu.
@table_owner je nvarchar(384), s výchozím hodnotou NULL. Je podporováno porovnávání vzorů divoké karty. Pokud vlastník není určen, platí výchozí pravidla viditelnosti tabulek v základním DBMS.
Pokud aktuální uživatel vlastní tabulku s tímto názvem, sloupce této tabulky se vrátí. Pokud vlastník není specifikován a aktuální uživatel nevlastní tabulku s tímto jménem, tento postup hledá tabulku s určeným table_name vlastněným vlastníkem databáze. Pokud existuje, sloupce této tabulky se vrátí.
[ @table_qualifier = ] N'table_qualifier'
Název kvalifikanta na tabulce.
@table_qualifier je sysname, s výchozím .NULL Různé produkty DBMS podporují třídílné pojmenování tabulek (qualifier.owner.name). V SQL Serveru tento sloupec představuje název databáze. V některých produktech představuje název serveru databázového prostředí tabulky.
[ @fUsePattern = ] fUsePattern
Určuje, zda jsou znaky pod podtržítek (_), procento (%) a závorka ([ nebo ]) interpretovány jako žolíkové znaky. Platné hodnoty jsou 0 (pattern matching je vypnuté) a 1 (pattern matching je zapnuté).
@fUsePattern je bit, s výchozím nastavením 1.
Hodnoty návratového kódu
Žádné.
Sada výsledků
| Název sloupce | Datový typ | Description |
|---|---|---|
TABLE_QUALIFIER |
sysname | Název kvalifikátoru tabulky. V SQL Serveru tento sloupec představuje název databáze. Toto pole může být .NULL |
TABLE_OWNER |
sysname | Jméno majitele stolu. Toto pole vždy vrací hodnotu. |
TABLE_NAME |
sysname | Název tabulky Toto pole vždy vrací hodnotu. |
GRANTOR |
sysname | Uživatelské jméno databáze, které uděluje oprávnění k tomuto TABLE_NAME uvedenému GRANTEE. V SQL Serveru je tento sloupec vždy stejný jako .TABLE_OWNER Toto pole vždy vrací hodnotu. Sloupec GRANTOR může být buď vlastníkem databáze (TABLE_OWNER), nebo uživatelem, kterému vlastník databáze udělil povolení použitím klauzule WITH GRANT OPTION ve výroku GRANT . |
GRANTEE |
sysname | Uživatelské jméno databáze, kterému byly uděleny oprávnění TABLE_NAME od uvedených .GRANTOR V SQL Serveru tento sloupec vždy obsahuje uživatele databáze z pohledu sys.database_principalssystem . Toto pole vždy vrací hodnotu. |
PRIVILEGE |
sysname | Jedno z dostupných oprávnění stolu. Oprávnění pro tabulky mohou být jedna z následujících hodnot (nebo jiné hodnoty podporované datovým zdrojem při definování implementace):SELECT
=
GRANTEE může získat data pro jeden nebo více sloupců.INSERT
=
GRANTEE může poskytovat data pro nové řádky pro jeden nebo více sloupců.UPDATE
=
GRANTEE může upravit existující data pro jeden nebo více sloupců.DELETE
=
GRANTEE může odstranit řádky ze stolu.REFERENCES
=
GRANTEE může odkazovat na sloupec v cizí tabulce ve vztahu primární klíč/cizí klíč. V SQL Serveru jsou vztahy primárního klíče a cizího klíče definovány s tabulkovými omezeními.Rozsah činnosti dané GRANTEE tabulkové privilegia závisí na zdroji dat. Například UPDATE toto oprávnění může umožnit GRANTEE aktualizovat všechny sloupce v tabulce na jednom datovém zdroji a pouze ty sloupce, pro které má privilegium na GRANTORUPDATE jiném datovém zdroji. |
IS_GRANTABLE |
sysname | Označuje, zda je oprávněno GRANTEE udělovat oprávnění jiným uživatelům (často označovaná jako "udělit s grantem"). Může být YES, NOnebo NULL. Neznámá (nebo NULL) hodnota označuje datový zdroj, pro který "grant s grantem" není použitelné. |
Poznámky
Uložená sp_table_privileges procedura je ekvivalentní jako SQLTablePrivileges v ODBC. Výsledky vrácené jsou uspořádány podle TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, a PRIVILEGE.
Povolení
Vyžaduje SELECT povolení ke schématu.
Examples
Následující příklad vrací informace o privilegiích pro všechny tabulky, jejichž názvy začínají na slovo Contact.
USE AdventureWorks2022;
GO
EXECUTE sp_table_privileges @table_name = 'Contact%';
Související obsah
- Katalogizované uložené procedury (Transact-SQL)
- uložené procedury systému (Transact-SQL)