Aracılığıyla paylaş


sp_fkeys (Transact-SQL)

Geçerli ortamı için mantıksal yabancı anahtar bilgiler verir.Bu yordam, devre dışı yabancı anahtarlar dahil olmak üzere yabancı anahtar ilişkileri gösterir.

Topic link iconTransact-SQL sözdizimi kuralları

sp_fkeys [ @pktable_name = ] 'pktable_name' 
     [ , [ @pktable_owner = ] 'pktable_owner' ] 
     [ , [ @pktable_qualifier = ] 'pktable_qualifier' ] 
     { , [ @fktable_name = ] 'fktable_name' } 
     [ , [ @fktable_owner = ] 'fktable_owner' ] 
     [ , [ @fktable_qualifier = ] 'fktable_qualifier' ]

Bağımsız değişkenler

  • [ @pktable_name = ] 'pktable_name'
    Is the name of the table, with the primary key, used to return catalog information.pktable_name is sysname, with a default of NULL.Joker karakter desen eşleştirme desteklenmez.Bu parametre ya dafktable_nameparametresi veya her ikisini de gereken sağlanan.

  • [ @pktable_owner = ] 'pktable_owner'
    Sahibi adı tablo (birincil anahtar ile) kullanılan katalog bilgilerini. geri dönmek için pktable_ownerissysname, varsayılan null değeri ileJoker karakter desen eşleştirme desteklenmez.Ifpktable_ownerbelirtilmemişse, varsayılan tablo görünürlük kuralları temel DBMS uygulamak.

    InSQL Server, geçerli kullanıcının sahip olduğu tablonun sütunları döndürülen belirtilen ada sahip bir tablo.Ifpktable_ownerbelirtilmezse geçerli kullanıcının belirtilen bir tablo sahibi vepktable_namebir tablo belirtilen yordamı arar,pktable_namesahibi veritabanı sahibi.tablo's sütunları döndürülen varsa.

  • [ @pktable_qualifier = ] 'pktable_qualifier'
    Is the name of the table (with the primary key) qualifier.pktable_qualifier is sysname, with a default of NULL.Various DBMS products support three-part naming for tables (qualifier.owner. name).In SQL Server, the qualifier represents the database name.Bazı ürünler, bu tablo's veritabanı ortamında sunucu adını temsil eder.

  • [ @fktable_name = ] 'fktable_name'
    Is the name of the table (with a foreign key) used to return catalog information.fktable_name is sysname, with a default of NULL.Joker karakter desen eşleştirme desteklenmez.Bu parametre ya dapktable_nameparametresi veya her ikisini de gereken sağlanan.

  • [ @fktable_owner = ] 'fktable_owner'
    Is the name of the owner of the table (with a foreign key) used to return catalog information.fktable_owner is sysname, with a default of NULL.Joker karakter desen eşleştirme desteklenmez.Iffktable_ownerbelirtilmemişse, varsayılan tablo görünürlük kuralları temel DBMS uygulamak.

    InSQL Server, geçerli kullanıcının sahip olduğu tablonun sütunları döndürülen belirtilen ada sahip bir tablo.Iffktable_ownerbelirtilmezse geçerli kullanıcının belirtilen bir tablo sahibi vefktable_namebir tablo belirtilen yordamı arar,fktable_namesahibi veritabanı sahibi.tablo's sütunları döndürülen varsa.

  • [ @fktable_qualifier =] 'fktable_qualifier'
    Is the name of the table (with a foreign key) qualifier.fktable_qualifier is sysname, with a default of NULL.InSQL ServerNiteleyici temsil eden veritabanı adı.Bazı ürünler, bu tablo's veritabanı ortamında sunucu adını temsil eder.

Dönüş Kodu Değerleri

None

Sonuç Kümeleri

sütun Name:

Veri türü

Açıklama

PKTABLE_QUALIFIER

sysname

Tablo (birincil anahtar) niteleyici adı.Bu alan null olabilir.

PKTABLE_OWNER

sysname

Tablo (birincil anahtar) sahibinin adı.Bu alan, her zaman bir değer döndürür.

PKTABLE_NAME

sysname

Adı tablo (ile birincil anahtar).Bu alan, her zaman bir değer döndürür.

PKCOLUMN_NAME

sysname

TABLE_NAME, her sütun için birincil anahtar sütunları adını verdi.Bu alan, her zaman bir değer döndürür.

FKTABLE_QUALIFIER

sysname

Tablo (yabancı anahtar) niteleyici adı.Bu alan null olabilir.

FKTABLE_OWNER

sysname

Tablo (yabancı anahtar) sahibinin adı.Bu alan, her zaman bir değer döndürür.

FKTABLE_NAME

sysname

Adı tablo (ile yabancı anahtar).Bu alan, her zaman bir değer döndürür.

FKCOLUMN_NAME

sysname

TABLE_NAME, her sütun için yabancı anahtar sütunu adını verdi.Bu alan, her zaman bir değer döndürür.

KEY_SEQ

smallint

Birden çok sütun birincil anahtar sütunu sıra numarası.Bu alan, her zaman bir değer döndürür.

UPDATE_RULE

smallint

Action applied to the foreign key when the SQL operation is an update.SQL Server returns 0 or 1 for these columns:

0 CASCADE yapılan yabancı anahtar. =

1 Yabancı anahtar geçerli., NO eylem değişiklikleri =

2=küme_NULL; küme yabancı anahtar NULL.

DELETE_RULE

smallint

Action applied to the foreign key when the SQL operation is a deletion.SQL Server returns 0 or 1 for these columns:

0 CASCADE yapılan yabancı anahtar. =

1 Yabancı anahtar geçerli., NO eylem değişiklikleri =

2=küme_NULL; küme yabancı anahtar NULL.

FK_NAME

sysname

yabancı anahtar tanımlayıcısı.It is NULL if not applicable to the data source.SQL Server returns the FOREIGN KEY constraint name.

PK_NAME

sysname

birincil anahtar tanımlayıcısı.It is NULL if not applicable to the data source.SQL Server returns the PRIMARY KEY constraint name.

sonuçlar döndürülen göre sıralıFKTABLE_QUALIFIER, FKTABLE_OWNER, FKTABLE_NAME, and KEY_SEQ.

Remarks

, Kodlama uygulaması, yabancı anahtarlar uygulanan aşağıdaki tarafından devre dışı bırakılmış olan tabloları içerir:

  • Geçici olarak sınırlama (ALTER tablo NOCHECK veya CREATE tablo NOT FOR çoğaltma) denetimi tablolarla çalışma ve daha sonra yeniden etkinleştirme sırasında devre dışı bırakma.NOT FOR çoğaltma seçeneğini hakkında daha fazla bilgi için bkz:Sınırlamaları, kimlik ve Tetikleyicileri NOT ile denetlemek IÇIN çoğaltma.

  • Tetikleyici ya da uygulama kodu ilişkileri zorlamak için kullanıyor.

Durumunda birincil anahtar tablosu adı verilen ve yabancı anahtar tablosu adı NULL,sp_fkeys belirli bir tablo. yabancı anahtarı içeren tüm tablolar verir. Durumunda yabancı anahtar tablosu adı verilen ve birincil anahtar tablosu adı NULL,sp_fkeys yabancı anahtar tablosu. yabancı anahtarları tarafından birincil anahtarı yabancı anahtar ilişkisinin ilgili tüm tablolar verir.

The sp_fkeys stored procedure is equivalent to SQLForeignKeys in ODBC.

İzinler

Şema üzerinde SELECT iznine gerek duyar.

Örnekler

İçin yabancı anahtarların bir listesini aşağıdaki örnek alanHumanResources.Department, tabloAdventureWorksveritabanı.

USE AdventureWorks;
GO
EXEC sp_fkeys @pktable_name = N'Department'
    ,@pktable_owner = N'HumanResources'