CREATE TABLE [Customers] (
    [CustomerID] [nchar] (5) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [CompanyName] [nvarchar] (40) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [ContactName] [nvarchar] (30) COLLATE Chinese_PRC_CI_AS NULL ,
    [ContactTitle] [nvarchar] (30) COLLATE Chinese_PRC_CI_AS NULL ,
    [Address] [nvarchar] (60) COLLATE Chinese_PRC_CI_AS NULL ,
    [City] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
    [Region] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
    [PostalCode] [nvarchar] (10) COLLATE Chinese_PRC_CI_AS NULL ,
    [Country] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
    [Phone] [nvarchar] (24) COLLATE Chinese_PRC_CI_AS NULL ,
    [Fax] [nvarchar] (24) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GOalter table Customers  add CONSTRAINT [PK_Customers] PRIMARY KEY  CLUSTERED 

[CustomerID] 

我是复制的表,可是如何用sql语句查看主键呢?

解决方案 »

  1.   

    exec sp_helpconstraint Customers 
      

  2.   

    exec sp_helpconstraint+表名
    可以查看该表 上所有的约束的NAME TYPE 等属性
      

  3.   

    楼上正解sp_helpconstraint
    返回一个列表,其内容包括所有约束类型、约束类型的用户定义或系统提供的名称、定义约束类型时用到的列,以及定义约束的表达式(仅适用于 DEFAULT 和 CHECK 约束)。语法
    sp_helpconstraint [ @objname = ] 'table'
        [ , [ @nomsg = ] 'no_message' ]参数
    [@objname =] 'table'返回其约束信息的表。指定的表对于当前数据库必须是本地的。table 的数据类型为 nvarchar(776),无默认值。[@nomsg =] 'no_message'是打印表名的可选参数。no_message 的数据类型为 varchar(5),默认值为 msg。nomsg 表示取消打印。 返回代码值
    0(成功)或 1(失败)结果集
    如果 sp_helpconstraint 参与到主键中,则它显示按降序索引的列。降序索引列将在结果集中列出,在其名称后带有减号 (-)。默认值(升序索引列)将仅按名称列出。注释
    执行 sp_help table 时将报告有关指定表的所有信息。若要仅查看约束信息,请使用 sp_helpconstraint。