SQLServer 2005

SELECT
d.name N'TableName',
d.xtype N'TableType',
a.colorder N'ColumnIndex',
a.name N'ColumnName',
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then ''else '' end) N'IdnetityFG',
(case when (SELECT count(*) FROM sysobjects WHERE
(name in (SELECT name FROM sysindexes WHERE (id = a.id) AND
(indid in (SELECT indid FROM sysindexkeys WHERE (id = a.id) AND
(colid in (SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name)))
)
)
)
) AND (xtype = 'PK')
)>0 then '' else '' end
) N'IsPK',
b.name N'DataType',
COLUMNPROPERTY(a.id,a.name,'PRECISION') as N'Length',
(case when a.isnullable=1 then ''else '' end) N'IsNullable',
isnull(e.text,'') N'Default',
g.value N'Description'
FROM syscolumns a
left join systypes b on a.xtype=b.xusertype
inner join sysobjects d on a.id=d.id and d.xtype in ('U','V') and d.name<>'dtproperties'
left join syscomments e on a.cdefault=e.id
LEFT OUTER JOIN sys.extended_properties AS g ON a.id = g.major_id AND a.colid = g.minor_id
order by object_name(a.id),a.colorder

SQLServer2000

SELECT
d.name N'TableName',
d.xtype N'TableType',
a.colorder N'ColumnIndex',
a.name N'ColumnName',
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then ''else '' end) N'IdnetityFG',
(case when (SELECT count(*) FROM sysobjects WHERE
(name in (SELECT name FROM sysindexes WHERE (id = a.id) AND
(indid in (SELECT indid FROM sysindexkeys WHERE (id = a.id) AND
(colid in (SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name)))
)
)
)
) AND (xtype = 'PK')
)>0 then '' else '' end
) N'IsPK',
b.name N'DataType',
COLUMNPROPERTY(a.id,a.name,'PRECISION') as N'Length',
(case when a.isnullable=1 then ''else '' end) N'IsNullable',
isnull(e.text,'') N'Default',
g.value N'Description'
FROM syscolumns a
left join systypes b on a.xtype=b.xusertype
inner join sysobjects d on a.id=d.id and d.xtype in ('U','V') and d.name<>'dtproperties'
left join syscomments e on a.cdefault=e.id
left join sysproperties g on a.id=g.id and a.colid=g.smallid
order by object_name(a.id),a.colorder --select * from sysproperties

SQLServer2005,2000获取表结构:字段名、类型、长度、主键、非空、注释的更多相关文章

  1. Java 通过JDBC查询数据库表结构(字段名称,类型,长度等)

    Java 通过JDBC查询数据库表结构(字段名称,类型,长度等) 发布者:唛唛家的豆子   时间:2012-11-20 17:54:02   Java 通过JDBC查询数据库表结构(字段名称,类型,长 ...

  2. MySql 获取表的字段名

    mysql安装成功后可以看到已经存在mysql.information_schema和test这个几个数据库,information_schema库中有一个名为COLUMNS的表,这个表中记录了数据库 ...

  3. Oracle修改表结构字段名和字段长度

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter ...

  4. oracle如何向空表中添加一个类型为clob的非空列

    一般的添加非空列的步骤是:先add可以为空的列,然后update该列为一个值(比如0),最后modify该列的类型 但是遇到类型为clob的就不行了.在modify这步时报错:ORA-22296:in ...

  5. Sql中获取表结构(字段名称,类型,长度,说明)

    Sql中获取表结构(字段名称,类型,长度,说明) SELECT TableName = OBJECT_NAME(c.object_id), ColumnsName = c.name, Descript ...

  6. Oracle查询数据表结构(字段,类型,大小,备注)

    作用:想要生成整个Oracle数据库所有表结构WORD文档(数据库设计说明书) Oracle数据库字典介绍    Oracle数据字典是有表和视图组成的,存储有关数据库结构信息的一些数据库对象.数据库 ...

  7. sql server 获取数据字段(表的字段和类型信息)

    获取数据字段(表的字段和类型信息) SELECT 表名= then d.name else '' end, 表说明= then isnull(f.value,'') else '' end, 字段序号 ...

  8. oracle中查询表的信息,包括表名,字段名,字段类型,主键,外键唯一性约束信息

    来源于网上整理 总结了一下oracle中查询表的信息,包括表名,字段名,字段类型,主键,外键唯一性约束信息,索引信息查询SQL如下,希望对大家有所帮助: 1.查询出所有的用户表select * fro ...

  9. MySql 、Oracle 获取表结构和字段信息

    1.MySql获取表结构信息 SELECT TABLE_NAME, TABLE_COMMENT FROM information_schema.`TABLES` WHERE TABLE_SCHEMA ...

随机推荐

  1. Indian Scientists Design Device to Collect Solar Energy 印度科学家设计太阳能收集设备

      Indian scientists have designed a new device they hope will solve one of the biggest problems with ...

  2. 搭建基于Windows + Apache + PHP + MySQL的Moodle平台

    说起Moodle,我相信学习教育技术的同学应该都不陌生,在大学的网络与远程教育课中,我有幸与传说中的Moodle相遇,然后相知,但是我绝对不会跟你们说一直到我毕业,我都没有找到一个合适的时间与这位Ms ...

  3. Mistral 工作流组件之一 概述

    Mistral的前世今生:  Mistral是Mirantis公司为Openstack开发的工作流组件,提供Workflow As a Service.典型的应用场景包括任务计划服务Cloud Cro ...

  4. socket学习笔记——实现收发文件(Windows)

    记录下来,供自己学习! server.c #define _CRT_SECURE_NO_DEPRECATE #include <stdio.h> #include <stdlib.h ...

  5. 设置Eclipse的字体风格方式

    1:Eclipse版本号:3.7.0(汉化版) 假设eclipse已经打开 窗口--->首选项--->常规--->外观--->颜色和字体--->基本--->文字字体 ...

  6. 在 JNI 编程中避免内存泄漏

    JAVA 中的内存泄漏 JAVA 编程中的内存泄漏,从泄漏的内存位置角度可以分为两种:JVM 中 Java Heap 的内存泄漏:JVM 内存中 native memory 的内存泄漏. Java H ...

  7. Java基础——左移和右移

    首先要明白一点,这里面所有的操作都是针对存储在计算机中中二进制的操作,那么就要知道,正数在计算机中是用二进制表示的,负数在计算机中使用补码表示的. 左移位:<<,有符号的移位操作 左移操作 ...

  8. js日期的写法,获取girdviw的行数、提示信息、验证数量信息

    //制订日期(js日期的写法) var myDate = new Date(); var theDate = myDate.toLocaleDateString();  //获取今天的日期 //获取控 ...

  9. SDL2 Tutorial

    Hello World for SDL2 SDL2 setting for visual studio. http://lazyfoo.net/tutorials/SDL/01_hello_SDL/w ...

  10. 如果公司里有上百个表要做触发器,如果手动写代码的话。很累,所以今天写了一个小程序,自动生成mysql的触发代码。

    <?php $dbname = 'test';//数据库 $tab1 = 'user'; //执行的表 $tab2 = 'user_bak'; //被触发的表 $conn = mysql_con ...