SELECT *
FROM syscolumns
WHERE (id = OBJECT_ID('Yourtable'))

解决方案 »

  1.   

    这样查出来了,可只看懂一个name知道是字段,其它的都乱起八糟,看不懂。
    能说一下,或是有相关资料吗。
      

  2.   

    你想做什么啊?倒出脚本不是更直观吗?
    如果你只想了解大概内容,可以用这个:
    select a.name 字段名,b.name 类型名,a.length 字段字节数, a.isnullable 能否为空 from syscolumns a, systypes b where a.xtype=b.xusertype and a.id =object_id('表名')
      

  3.   

    syscolumns
    每个表和视图中的每列在表中占一行,存储过程中的每个参数在表中也占一行。该表位于每个数据库中。列名 数据类型 描述 
    name sysname 列名或过程参数的名称。 
    id int 该列所属的表对象 ID,或与该参数关联的存储过程 ID。 
    xtype tinyint systypes 中的物理存储类型。 
    typestat tinyint 仅限内部使用。 
    xusertype smallint 扩展的用户定义数据类型 ID。 
    length smallint systypes 中的最大物理存储长度。 
    xprec tinyint 仅限内部使用。 
    xscale tinyint 仅限内部使用。 
    colid smallint 列或参数 ID。 
    xoffset smallint 仅限内部使用。 
    bitpos tinyint 仅限内部使用。 
    reserved tinyint 仅限内部使用。 
    colstat smallint 仅限内部使用。 
    cdefault int 该列的默认值 ID。 
    domain int 该列的规则或 CHECK 约束 ID。 
    number smallint 过程分组时(0 表示非过程项)的子过程号。 
    colorder smallint 仅限内部使用。 
    autoval varbinary(255) 仅限内部使用。 
    offset smallint 该列所在行的偏移量;如果为负,表示可变长度行。 
    status tinyint 用于描述列或参数属性的位图: 
    0x08 = 列允许空值。
    0x10 = 当添加 varchar 或 varbinary 列时,ANSI 填充生效。保留 varchar 列的尾随空格,保留 varbinary 列的尾随零。
    0x40 = 参数为 OUTPUT 参数。
    0x80 = 列为标识列。
     
    type tinyint systypes 中的物理存储类型。 
    usertype smallint systypes 中的用户定义数据类型 ID。 
    printfmt varchar(255) 仅限内部使用。 
    prec smallint 该列的精度级别。 
    scale int 该列的小数位数。 
    iscomputed int 表示是否已计算该列的标志: 
    0 = 未计算。
    1 = 已计算。
     
    isoutparam int 表示该过程参数是否是输出参数: 
    1 = 真。
    0 = 假。
     
    isnullable int 表示该列是否允许空值: 
    1 = 真。
    0 = 假。
     
      

  4.   

    查询本数据库所有的用户表:select c.name 表名, a.name 字段名,b.name 类型名,a.length 字段字节数, a.isnullable 能否为空 from syscolumns a, systypes b ,sysobjects c where a.xusertype=b.xusertype and a.id =c.id and c.xtype ='U'