查询出主键和唯一键.
注意要分别出来,哪个是主键,啊个是唯一键,哪个是其它索引.

解决方案 »

  1.   

    select *
    from sys.indexes 列名  数据类型  说明  
    object_id
     int
     该索引所属对象的 ID。
     
    name
     sysname
     索引的名称。name 只在该对象中是唯一的。 NULL = 堆
     
    index_id
     int
     索引的 ID。index_id 只在该对象中是唯一的。 0 = 堆1 = 聚集索引> 1 = 非聚集索引
     
    type
     tinyint
     索引的类型:0 = 堆1 = 聚集2 = 非聚集3 = XML
     
    type_desc
     nvarchar(60)
     索引类型的说明:HEAPCLUSTEREDNONCLUSTEREDXML
     
    is_unique
     bit
     1 = 索引是唯一的。0 = 索引不是唯一的。
     
    data_space_id
     int
     该索引的数据空间的 ID。数据空间是文件组或分区方案。 0 = object_id 是表值函数。
     
    ignore_dup_key
     bit
     1 = IGNORE_DUP_KEY 是 ON。0 = IGNORE_DUP_KEY 是 OFF。
     
    is_primary_key
     bit
     1 = 索引是 PRIMARY KEY 约束的一部分。
     
    is_unique_constraint
     bit
     1 = 索引是 UNIQUE 约束的一部分。
     
    fill_factor
     tinyint
     > 0 = 创建或重新生成索引时使用的 FILLFACTOR 百分比。0 = 默认值
     
    is_padded
     bit
     1 = PADINDEX 是 ON。0 = PADINDEX 是 OFF。
     
    is_disabled
     bit
     1 = 禁用索引。0 = 不禁用索引。
     
    is_hypothetical
     bit
     1 = 索引是假设的,不能直接用作数据访问路径。假设的索引包含列级统计信息。0 = 索引不是假设的。
     
    allow_row_locks
     bit
     1 = 索引允许行锁。0 = 索引不允许行锁。 
     
    allow_page_locks
     bit
     1 = 索引允许页锁。0 = 索引不允许页锁。 
     
      

  2.   


    SELECT TABLE_NAME as 表名,COLUMN_NAME as 主键 FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME='表'
      

  3.   


    --请查询系统目录视图sys.key_constraints ,如:
    select * from sys.key_constraints --结果说明:
    name - 名称
    type - 类型 PK主键 UQ唯一