sp_pkeys
返回当前环境中单个表的主键信息。

解决方案 »

  1.   

    if exists (select 1 from sysobjects where xtype='PK' and name='PKName' )
      alter table drop CONSTRAINT PKname  PRIMARY KEY
      

  2.   


    根据表名字检测是否有PK
    luckcreate  proc checkPk
    @tablename  char(100)   --待检测的表
    as
    beginif    (select  Count(id)   from  sysobjects   where  parent_obj in ( select object_id(@tablename))  and xtype='PK' )>0   Select   1  --有
    else
       select  0   --无end
      

  3.   

    望不吝赐教:
    alter table test add f4 int identity(1,1) not null constraint f4_pk primary key
    上面这句话是对的。我想问的是,如果要在已存在的一列加上primary key,应该怎么写?我试了很多次都不行。
      

  4.   

    斑竹好像写错了,应该是:
    if exists (select 1 from sysobjects where xtype='PK' and name='PKName' )
      alter table drop CONSTRAINT PKname  --要去掉PRIMARY KEY
      

  5.   


    首先判断是否有,如果有则删除否则按以下语法增加:ALTER TABLE tablename  ADD 
    CONSTRAINT [PK_Name] PRIMARY KEY 
    (
    [colname]
    )  ON [PRIMARY] 
      

  6.   

    给你一个建议当对sql语法不熟悉的时候,你可以在sql  server 企业管理器中
    选种某一表,所以任务 -》生成sql语句,在弹出的窗口中选择选项,然后根据需要(比如生成主键选项)选择相应的现象,然后生成sql语句  里面生成的语句就能看的很清楚了(当然必须你的表必须有主键才能生成主键)
      

  7.   

    to firedragoninhell:
    alter table table_name
    add constraint pk_name primary key clustered(column_name)
      

  8.   

    看看系统表ysobjects 就可以了
      

  9.   

    看看系统表sysobjects 就可以了
      

  10.   

    看看系统表sysobjects 就可以了