Aracılığıyla paylaş


sp_table_privileges_ex (Transact-SQL)

Şunlar için geçerlidir: SQL Server

Belirlenen bağlı sunucudan belirlenen tablo hakkındaki ayrıcalık bilgilerini döndürür.

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_table_privileges_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

Arguments

[ @table_server = ] N'table_server'

Bağlantılı sunucunun adı, bilgi iade edileceği. @table_serversysname'dir, varsayılan yoktur.

[ @table_name = ] N'table_name'

Tablo ayrıcalık bilgisi sağlanacak tablonun adı. @table_namesysname'dir ve varsayılan olarak .NULL

[ @table_schema = ] N'table_schema'

Masa şeması. Bazı DBMS ortamlarında bu tablo sahibidir. @table_schemasysname'dir ve varsayılan olarak .NULL

[ @table_catalog = ] N'table_catalog'

Belirtilen @table_name bulunduğu veritabanının adı. @table_catalogsysname'dir ve varsayılan olarak .NULL

[ @fUsePattern = ] fUsePattern

Karakterler _, %, [, ve ] karakterlerinin joker karakter olarak yorumlanıp yorumlanmayacağını belirler. Geçerli değerler 0 (desen eşleştirmesi bozuk) ve 1 (desen eşleştirmesi açık). @fUsePatternbit'tir, varsayılan olarak .1

Dönüş kodu değerleri

Yok.

Sonuç kümesi

Sütun adı Veri türü Description
TABLE_CAT sysname Tablo niteleyici adı. Çeşitli DBMS ürünleri, tablolar için üç bölümlü adlandırmayı destekler (<qualifier>.<owner>.<name>). SQL Server'da bu sütun veritabanı adını temsil eder. Bazı ürünlerde, tablonun veritabanı ortamının sunucu adını temsil eder. Bu alan olabilir NULL.
TABLE_SCHEM sysname Masa sahibinin adı. SQL Server'da bu sütun, tabloyu oluşturan veritabanı kullanıcısının adını temsil eder. Bu alan her zaman bir değer döndürür.
TABLE_NAME sysname Tablo adı. Bu alan her zaman bir değer döndürür.
GRANTOR sysname Listelenen listeye izin veren veritabanı kullanıcı adı TABLE_NAMEGRANTEE. SQL Server'da bu sütun her zaman .TABLE_OWNER Bu alan her zaman bir değer döndürür. Ayrıca, sütun GRANTOR ya veritabanı sahibi (TABLE_OWNER) ya da veritabanı sahibinin ifade maddesindeki WITH GRANT OPTION maddeyi GRANT kullanarak izin verdiği bir kullanıcı olabilir.
GRANTEE sysname Listelenen TABLE_NAMEkişiler tarafından bu konuda GRANTOR izin verilen veritabanı kullanıcı adı. Bu alan her zaman bir değer döndürür.
PRIVILEGE varchar(32) Mevcut tablo izinlerinden biri. Tablo izinleri, uygulama tanımlandığında veri kaynağı tarafından desteklenen diğer değerlerden biri veya aşağıdaki değerlerden biri olabilir.

SELECT = GRANTEE bir veya daha fazla sütun için veri alabilir.

INSERT = GRANTEE bir veya daha fazla sütun için yeni satırlar için veri sağlayabilir.

UPDATE = GRANTEE bir veya daha fazla sütun için mevcut verileri değiştirebilir.

DELETE = GRANTEE Masadan satırları kaldırabilir.

REFERENCES = GRANTEE birincil anahtar/yabancı anahtar ilişkisinde yabancı tablodaki bir sütuna referans verebilir. SQL Server'da, birincil anahtar/yabancı anahtar ilişkileri tablo kısıtlamaları kullanılarak tanımlanır.

Belirli bir tablo ayrıcalığı tarafından verilen eylem GRANTEE kapsamı veri kaynağına bağlıdır. Örneğin, izinUPDATE, bir veri kaynağında bir tablodaki tüm sütunları ve sadece başka bir veri kaynağında GÜNCELLEME iznine sahip sütunları GRANTOR güncellemesini sağlayabilirGRANTEE.
IS_GRANTABLE varchar(3) Diğer kullanıcılara izin verip vermeme izin verilip verilmediğini GRANTEE gösterir. Buna genellikle "izin ile hibe verme" denir. , YESveya NOolabilirNULL. Bilinmeyen veya NULL, değeri, "hibe ile hibe" ifadesinin geçerli olmadığı bir veri kaynağını ifade eder.

Açıklamalar

Sonuçlar , TABLE_QUALIFIER, TABLE_OWNER, ve TABLE_NAMEile PRIVILEGEsıralanır.

Permissions

Şema için izin gerekiyor SELECT .

Örnekler

Aşağıdaki örnek, belirlenen bağlı sunucudan Seattle1veritabanında isimlerle ProductAdventureWorks2025 başlayan tablolar hakkında ayrıcalık bilgilerini getirir. SQL Server bağlantılı sunucu olarak kabul edilir.

EXECUTE sp_table_privileges_ex
    @table_server = 'Seattle1',
    @table_name = 'Product%',
    @table_schema = 'Production',
    @table_catalog = 'AdventureWorks2022';