ms sql server 如何查询某个表里面的主键名
student表里面有Sno,Sname,Sage,Ssex四个列,现在是设置Sno为主键,现在问题是如何用sql 语句查询出student表的主键名?

解决方案 »

  1.   

    EXEC sp_pkeys @table_name='student'
      

  2.   

    楼上都对,可用
    也可用sp_help 'student'来看这张表的信息
      

  3.   


    create table student
    (Sno int, 
     Sname varchar(10), 
     Sage int, 
     Ssex varchar(2)
     constraint pk_student primary key (Sno)
    )
    select c.name 
    from sys.indexes a
    inner join sys.index_columns b
    on a.object_id=b.object_id
    inner join sys.columns c
    on b.object_id=c.object_id and b.index_column_id=c.column_id
    where a.object_id=object_id('student') and a.is_primary_key=1name
    --------------------
    Sno(1 row(s) affected)