代码之家  ›  专栏  ›  技术社区  ›  goofyui

如何从表中获取列键约束:SQL中的信息架构?

  •  -1
  • goofyui  · 技术社区  · 5 年前

    如何从表中获取列键约束:SQL中的信息架构?

    我只需要得到包含主键、外键和这些详细信息的列。

    SELECT      COLUMN_NAME AS COLUMNNAME,  
                DATA_TYPE AS DATATYPE,
                CHARACTER_MAXIMUM_LENGTH,
                IS_NULLABLE
    FROM        INFORMATION_SCHEMA.COLUMNS  
    WHERE       TABLE_NAME = 'My_Table_Name'
    
    1 回复  |  直到 5 年前
        1
  •  1
  •   Khairul Alam    5 年前

    这可能会有帮助…

        USE AdventureWorks2012
        GO
        SELECT t.CONSTRAINT_NAME,t.TABLE_NAME,t.CONSTRAINT_TYPE,c.COLUMN_NAME
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS t
        INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE c ON t.CONSTRAINT_NAME = c.CONSTRAINT_NAME
       -- WHERE    t.TABLE_NAME = 'ProductVendor'
            -- AND t.CONSTRAINT_TYPE = 'PRIMARY KEY'
    

    enter image description here

        2
  •  -1
  •   Pho    5 年前

    尝试sys.index和sys.index列

    这在以前已经得到了很好的回答: List of all index & index columns in SQL Server DB