zoukankan      html  css  js  c++  java
  • sql server表外键查询

    --本表外键
    SELECT
    f.name AS foreign_key_name
    ,OBJECT_NAME(f.parent_object_id) AS table_name
    ,COL_NAME(fc.parent_object_id, fc.parent_column_id) AS constraint_column_name
    ,OBJECT_NAME (f.referenced_object_id) AS referenced_object
    ,COL_NAME(fc.referenced_object_id, fc.referenced_column_id) AS referenced_column_name
    ,is_disabled
    ,delete_referential_action_desc
    ,update_referential_action_desc
    FROM sys.foreign_keys AS f
    INNER JOIN sys.foreign_key_columns AS fc
    ON f.object_id = fc.constraint_object_id
    WHERE f.parent_object_id = OBJECT_ID('table_name');
    
    
    --外键被参考表
    SELECT 主键列ID=b.rkey
        ,主键列名=(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid)
        ,外键表ID=b.fkeyid
        ,外键表名称=object_name(b.fkeyid)
        ,外键列ID=b.fkey
        ,外键列名=(SELECT name FROM syscolumns WHERE colid=b.fkey AND id=b.fkeyid)
        ,级联更新=ObjectProperty(a.id,'CnstIsUpdateCascade')
        ,级联删除=ObjectProperty(a.id,'CnstIsDeleteCascade')
    FROM sysobjects a
        join sysforeignkeys b on a.id=b.constid
        join sysobjects c on a.parent_obj=c.id
    where a.xtype='f' AND c.xtype='U'
        and object_name(b.rkeyid)='table_name'
  • 相关阅读:
    C语言(十八)综合
    C语言(十七)链表
    Redis使用
    fastdb 使用
    CentOS 7.3 安装Oracle 11gR2 64位
    VMWare 12 安装CentOS 7.3 和 Red Hat Enterprise Linux 7.3
    Python学习
    Debian的软件包管理工具命令 (dpkg,apt-get)详解
    Debian8安装Vim8
    VMware12下安装Debian8.5
  • 原文地址:https://www.cnblogs.com/wangtaobiu/p/15542981.html
Copyright © 2011-2022 走看看