关闭

有关SQLServer2000元数据读取

534人阅读 评论(0) 收藏 举报

       主要用到sysobjects(id,tablename),syscolumns(tablename,columanname),systypes(type)这几个表,可以读取不同的模式的基本定义,比如字段的名称,类型,精度等。对于是否自增之类的信息,可以通过columnproperty这个函数获得,查看帮助就知道如何使用了。例子:

  select
  表名=d.name,
  字段序号=a.colorder,字段名=a.name, 长度=a.length, 小数位数=CASE b.NAME WHEN 'datetime' THEN 0 ELSE b.XSCALE END, 非空=a.isnullable, 类型= b.name,自增= COLUMNPROPERTY (d.id,a.name, 'IsIdentity')
  FROM   syscolumns   a  
  left   join   systypes   b   on   a.xtype=b.xusertype  
  inner   join   sysobjects   d   on   a.id=d.id     and   d.xtype='U'   and   d.status>=0  

       除此以外,如果还想获得primary key的信息,一个很方便的方法 是通过INFORMATION_SCHEMA。比如primary key的信息就存放在key_column_usage,还有columns等信息。

     select * from INFORMATION_SCHEMA .KEY_COLUMN_USAGE

   

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:7622次
    • 积分:121
    • 等级:
    • 排名:千里之外
    • 原创:3篇
    • 转载:3篇
    • 译文:0篇
    • 评论:6条
    文章分类
    文章存档
    最新评论