比如取字段OrderID的类型为int
          OrderDate的类型为datetime
          ShipName的类型为nvarchar(40)
          Freight的类型为money有办法做到么?

解决方案 »

  1.   

    select
     a.Name as 表名,
     b.Name as 列名,
     c.Name as 类型,
     b.max_length as 字节数,
     b.Precision as 整数位,
     b.Scale as 小数位
    from Sys.tables a
     inner join Sys.columns b on a.object_id=b.object_id
     inner join sys.Types c on c.User_Type_ID=b.User_Type_ID
      

  2.   

    MSSQL? 可以做到的 好像是在master数据库中有一个表 使用来存储“建表信息”的。嘿嘿,其他的不清楚了
      

  3.   


    master 中存放的应该是“建库信息”,建表信息应该在当前数据库中存放这呢??
      

  4.   

    select * from syscolumns where id=object_id('orders')
    列的信息都在里面,,xusertype ,length。。写个case when 什么的试试
      

  5.   

    systypes 这个貌似是类型表,xusertype 和syscolumns 里面的对应,取出name就好了
      

  6.   

    select a.name,b.name,c.name,a.max_length from sys.columns a, sys.objects b,sys.types c 
       where  b.type='u' and a.object_id=b.object_id 
         and a.system_type_id=c.system_type_id
         and b.name='你的表名'
      

  7.   

    select a.name,b.name from syscolumns a inner join systypes b on a.xusertype=b.xusertype where a.id=object_id('你的表名')