sp_fkeys sp_fkeys - 北京怡康軟件科技有限公司 資源網(wǎng) "/>

亚洲av色香蕉一区二区三区,十四以下岁毛片带血a级,亚洲 校园 欧美 国产 另类,亚洲av日韩av一区谷露,色欲av无码一区二区三区

  • 相關(guān)軟件
    >sp_fkeys 創(chuàng)建者:webmaster 更新時間:2006-02-16 15:51

    返回當(dāng)前環(huán)境的邏鍵外鍵信息。該過程顯示各種外鍵關(guān)系,包括禁用的外鍵。



    語法


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



    參數(shù)


    [@pktable_name =] 'pktable_name'



    是表的名稱(該表帶有主鍵),使用該表返回目錄信息。pktable_name 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。不支持通配符模式匹配。必須提供這個參數(shù)或 fktable_name 參數(shù),或者同時提供二者。



    [@pktable_owner =] 'pktable_owner'



    表所有者的名稱(該表帶有主鍵),使用該表返回目錄信息。pktable_owner 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。不支持通配符模式匹配。如果沒有指定 pktable_owner,則采用基礎(chǔ) DBMS 默認(rèn)的表可視性規(guī)則。



    在 Microsoft® SQL Server™ 中,如果當(dāng)前用戶擁有的表具有指定名稱,則返回該表的列。如果沒有指定 pktable_owner,而且當(dāng)前用戶沒有帶有指定的 pktable_name 的表,那么該過程便查找數(shù)據(jù)庫所有者所擁有的表,看看其中是否有某個表帶有指定的 pktable_name。如果有,則返回該表的列。



    [@pktable_qualifier =] 'pktable_qualifier'



    是表限定符的名稱(該表帶有主鍵)。pktable_qualifier 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。多種 DBMS 產(chǎn)品支持表的三部分命名方式 (qualifier.owner.name)。在 SQL Server 中,該限定符表示數(shù)據(jù)庫名稱。在某些產(chǎn)品中,該列表示表所在數(shù)據(jù)庫環(huán)境的服務(wù)器名。



    [@fktable_name =] 'fktable_name'



    是表的名稱(該表帶有外鍵),使用該表返回目錄信息。fktable_name 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。不支持通配符模式匹配。必須提供這個參數(shù)或 pktable_name 參數(shù),或者同時提供二者。



    [@fktable_owner =] 'fktable_owner'



    是表所有者的名稱(該表帶有外鍵),使用該表返回目錄信息。fktable_owner 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。不支持通配符模式匹配。如果沒有指定 fktable_owner,則采用基礎(chǔ) DBMS 默認(rèn)的表可視性規(guī)則。



    在 SQL Server 中,如果當(dāng)前用戶擁有一個帶有指定名稱的表,那么就返回該表的列。如果沒有指定 fktable_owner,并且當(dāng)前用戶沒有帶有指定的 fktable_name 的表,那么該過程就查找數(shù)據(jù)庫所有者所擁有的表,看看其中是否有某個表帶有指定的 fktable_name。如果有,則返回該表的列。



    [@fktable_qualifier =] 'fktable_qualifier'



    是表限定符的名稱(該表帶有外鍵)。fktable_qualifier 的數(shù)據(jù)類型為 sysname,默認(rèn)值為 NULL。在 SQL Server 中,該限定符表示數(shù)據(jù)庫名稱。在某些產(chǎn)品中,該列表示表所在數(shù)據(jù)庫環(huán)境的服務(wù)器名。



    返回代碼值




    結(jié)果集























































































    列名數(shù)據(jù)類型描述
    PKTABLE_QUALIFIERsysname表限定符的名稱(該表帶有主鍵)。該字段可以為 NULL。
    PKTABLE_OWNERsysname表所有者的名稱(該表帶有主鍵)。該字段始終返回值。
    PKTABLE_NAMEsysname表的名稱(該表帶有主鍵)。該字段始終返回值。
    PKCOLUMN_NAMEsysname主鍵列的名稱,針對返回的 TABLE_NAME 的每個列。該字段始終返回值。
    FKTABLE_QUALIFIERsysname表限定符的名稱(該表帶有外鍵)。該字段可以為 NULL。
    FKTABLE_OWNERsysname表所有者的名稱(該表帶有外鍵)。該字段始終返回值。
    FKTABLE_NAMEsysname表的名稱(該表帶有外鍵)。該字段始終返回值。
    FKCOLUMN_NAMEvarchar(32)外鍵列的名稱,針對返回的 TABLE_NAME 的每個列。該字段始終返回值。
    KEY_SEQsmallint多列主鍵中列的序列號。該字段始終返回值。
    UPDATE_RULEsmallint當(dāng) SQL 操作是更新時,應(yīng)用于外鍵的動作。SQL Server 為這些列返回 0 或 1。開放數(shù)據(jù)服務(wù)網(wǎng)關(guān)可返回值 0、1 或 2:

    0= 對外鍵的 CASCADE 修改。

    1= 如果有外鍵,那么進行 NO ACTION 修改。

    2=SET_NULL;將外鍵設(shè)置為 NULL。


    DELETE_RULEsmallint當(dāng) SQL 操作是刪除時,應(yīng)用于外鍵的動作。SQL Server 為這些列返回 0 或 1。開放數(shù)據(jù)服務(wù)網(wǎng)關(guān)可返回值 0、1 或 2:

    0= 對外鍵的 CASCADE 修改。

    1= 如果有外鍵,那么進行 NO ACTION 修改。

    2=SET_NULL;將外鍵設(shè)置為 NULL。


    FK_NAMEsysname外鍵標(biāo)識符。如果對數(shù)據(jù)源不可用,則其為 NULL。SQL Server 返回 FOREIGN KEY 約束名。
    PK_NAMEsysname主鍵標(biāo)識符。如果對數(shù)據(jù)源不可用,則其為 NULL。SQL Server 返回 PRIMARY KEY 約束名。



    返回的結(jié)果集按 FKTABLE_QUALIFIERFKTABLE_OWNER、FKTABLE_NAMEKEY_SEQ 排序。



    注釋


    如果應(yīng)用程序編碼中包含某些表,而這些表帶有禁用的外鍵,那么可以通過如下方法實現(xiàn)應(yīng)用程序編碼:


    1. 當(dāng)使用這些表時,臨時禁用限制檢查(ALTER TABLE NOCHECK 或 CREATE TABLE NOT FOR REPLICATION),稍后再重新啟用它。



    2. 使用觸發(fā)器或應(yīng)用程序代碼強制實施關(guān)系。



    如果提供了主鍵表名,而外鍵表名為 NULL,那么 sp_fkeys 將返回所有這樣的表:該表包含指向給定的表的外鍵。如果提供了外鍵表名,而主鍵表名為 NULL,那么 sp_fkeys 將返回所有這樣的表:該表通過主鍵/外鍵關(guān)系與外鍵表中的外鍵相關(guān)聯(lián)。



    sp_fkeys 存儲過程等價于 ODBC 中的 SQLForeignKeys。



    權(quán)限


    執(zhí)行權(quán)限默認(rèn)授予 public 角色。



    示例


    下面的示例為 Northwind 數(shù)據(jù)庫中的 Customers 表檢索一個外鍵的列表。



    USE Northwind
    EXEC sp_fkeys @pktable_name = N'Customers'
    相關(guān)文章
    本頁查看次數(shù):