SELECT
 (case when a.colorder=1 then d.name else '' end) N'表名',
 a.colorder N'字段序号',
 a.name N'字段名',
 (case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) N'标识',
 (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'主键',
 b.name N'类型',
 a.length N'占用字节数',
 COLUMNPROPERTY(a.id,a.name,'PRECISION') as N'长度',
 isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as N'小数位数',
 (case when a.isnullable=1 then '√'else '' end) N'允许空',
 isnull(e.text,'') N'默认值',
 isnull(g.[value],'') AS N'字段说明'
--into ##tx

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.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

====sql
declare @Sql nvarchar(2000)
set @Sql=

'SELECT  '+
' (case when a.colorder=1 then d.name else '+char(39)+''+char(39)+' end) N'+char(39)+'表名'+char(39)+', '+
' a.colorder N'+char(39)+'字段序号'+char(39)+', '+
' a.name N'+char(39)+'字段名'+char(39)+',   '+
' (case when COLUMNPROPERTY( a.id,a.name,'+char(39)+'IsIdentity'+char(39)+')=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'标识'+char(39)+', '+
' (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 = '+char(39)+'PK'+char(39)+'))>0 then '+char(39)+'√'+char(39)+' else '+char(39)+''+char(39)+' end) N'+char(39)+'主键'+char(39)+', '+
' b.name N'+char(39)+'类型'+char(39)+', '+
' a.length N'+char(39)+'占用字节数'+char(39)+', '+
' COLUMNPROPERTY(a.id,a.name,'+char(39)+'PRECISION'+char(39)+') as N'+char(39)+'长度'+char(39)+', '+
' isnull(COLUMNPROPERTY(a.id,a.name,'+char(39)+'Scale'+char(39)+'),0) as N'+char(39)+'小数位数'+char(39)+', '+
' (case when a.isnullable=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'允许空'+char(39)+', '+
' isnull(e.text,'+char(39)+''+char(39)+') N'+char(39)+'默认值'+char(39)+', '+
' isnull(g.[value],'+char(39)+''+char(39)+') AS N'+char(39)+'字段说明'+char(39)+' '+
--'--into ##tx '+
' '+
'FROM  syscolumns  a left join systypes b  '+
'on  a.xtype=b.xusertype '+
'inner join sysobjects d  '+
'on a.id=d.id  and  d.xtype='+char(39)+'U'+char(39)+' and  d.name<>'+char(39)+'dtproperties'+char(39)+' '+
'left join syscomments e '+
'on a.cdefault=e.id '+
'left join sysproperties g '+
'on a.id=g.id AND a.colid = g.smallid '

exec(@Sql)

===仅保留表名、字段名、字段类型和字段说明
declare @Sql nvarchar(2000)
set @Sql=

'SELECT  '+
--' (case when a.colorder=1 then d.name else '+char(39)+''+char(39)+' end) N'+char(39)+'表名'+char(39)+', '+
'  d.name  N'+char(39)+'表名'+char(39)+', '+
--' a.colorder N'+char(39)+'字段序号'+char(39)+', '+
' a.name N'+char(39)+'字段名'+char(39)+',   '+
--' (case when COLUMNPROPERTY( a.id,a.name,'+char(39)+'IsIdentity'+char(39)+')=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'标识'+char(39)+', '+
--' (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 = '+char(39)+'PK'+char(39)+'))>0 then '+char(39)+'√'+char(39)+' else '+char(39)+''+char(39)+' end) N'+char(39)+'主键'+char(39)+', '+
' b.name N'+char(39)+'类型'+char(39)+', '+
--' a.length N'+char(39)+'占用字节数'+char(39)+', '+
--' COLUMNPROPERTY(a.id,a.name,'+char(39)+'PRECISION'+char(39)+') as N'+char(39)+'长度'+char(39)+', '+
--' isnull(COLUMNPROPERTY(a.id,a.name,'+char(39)+'Scale'+char(39)+'),0) as N'+char(39)+'小数位数'+char(39)+', '+
--' (case when a.isnullable=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'允许空'+char(39)+', '+
--' isnull(e.text,'+char(39)+''+char(39)+') N'+char(39)+'默认值'+char(39)+', '+
' isnull(g.[value],'+char(39)+''+char(39)+') AS N'+char(39)+'字段说明'+char(39)+' '+
--'--into ##tx '+
' '+
'FROM  syscolumns  a left join systypes b  '+
'on  a.xtype=b.xusertype '+
'inner join sysobjects d  '+
'on a.id=d.id  and  d.xtype='+char(39)+'U'+char(39)+' and  d.name<>'+char(39)+'dtproperties'+char(39)+' '+
'left join syscomments e '+
'on a.cdefault=e.id '+
'left join sysproperties g '+
'on a.id=g.id AND a.colid = g.smallid '

exec(@Sql)

连字段说明都去掉
declare @Sql nvarchar(2000)
set @Sql=

'SELECT  '+
--' (case when a.colorder=1 then d.name else '+char(39)+''+char(39)+' end) N'+char(39)+'表名'+char(39)+', '+
'  d.name  N'+char(39)+'表名'+char(39)+', '+
--' a.colorder N'+char(39)+'字段序号'+char(39)+', '+
' a.name N'+char(39)+'字段名'+char(39)+',   '+
--' (case when COLUMNPROPERTY( a.id,a.name,'+char(39)+'IsIdentity'+char(39)+')=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'标识'+char(39)+', '+
--' (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 = '+char(39)+'PK'+char(39)+'))>0 then '+char(39)+'√'+char(39)+' else '+char(39)+''+char(39)+' end) N'+char(39)+'主键'+char(39)+', '+
' b.name N'+char(39)+'类型'+char(39)+' '+
--' a.length N'+char(39)+'占用字节数'+char(39)+', '+
--' COLUMNPROPERTY(a.id,a.name,'+char(39)+'PRECISION'+char(39)+') as N'+char(39)+'长度'+char(39)+', '+
--' isnull(COLUMNPROPERTY(a.id,a.name,'+char(39)+'Scale'+char(39)+'),0) as N'+char(39)+'小数位数'+char(39)+', '+
--' (case when a.isnullable=1 then '+char(39)+'√'+char(39)+'else '+char(39)+''+char(39)+' end) N'+char(39)+'允许空'+char(39)+', '+
--' isnull(e.text,'+char(39)+''+char(39)+') N'+char(39)+'默认值'+char(39)+', '+
--' isnull(g.[value],'+char(39)+''+char(39)+') AS N'+char(39)+'字段说明'+char(39)+' '+
--'--into ##tx '+
' '+
' FROM  syscolumns  a left join systypes b  '+
'on  a.xtype=b.xusertype '+
'inner join sysobjects d  '+
'on a.id=d.id  and  d.xtype='+char(39)+'U'+char(39)+' and  d.name<>'+char(39)+'dtproperties'+char(39)+' '+
'left join syscomments e '+
'on a.cdefault=e.id '+
'left join sysproperties g '+
'on a.id=g.id AND a.colid = g.smallid '

exec(@Sql)

转载于:https://www.cnblogs.com/jhabb/archive/2010/11/19/1881463.html

得到当前数据库中所有用户表信息相关推荐

  1. 关于DM达梦数据库,获取用户表信息、数据表结构、数据表创建语句、主键等信息的sql

    1.获取数据表中的字段名.类型.长度.描述 select name,reftype,length,descrip from ( select distinct A.COLUMN_ID as id, A ...

  2. 获取Access数据库中的用户表名

    SQL语句为 SELECT Name FROM MSysObjects WHERE Type=1 AND Flags=0; 这本来没啥问题,但在代码里执行可能会因为权限报错: ('42000', &q ...

  3. mysql查询表中名字包含某个字符_查询当前数据库中所有用户表中哪些字段包含某个字符串...

    展开全部 CREATE PROCEDURE FindString(@Value VARCHAR(1024)) AS BEGIN SET NOCOUNT ON; DECLARE @SQL VARCHAR ...

  4. Sql Server数据库中的用户及权限配置,保障数据库安全

    最近有个朋友的网站被攻击,漏洞是比较过时的SQL注入,在帮修复的过程中,发现数据库用的是超级管理员用户sa,提高数据安全性和服务器安全性的措施之一便是降低web应用数据库用户的权限,回顾了一下Sql ...

  5. php数据库中统计人数用什么方法,在PHP中处理用户统计信息的最佳方法是什么

    我如何处理 PHP中的用户统计信息? 我可以选择两种明显的方法.两者都有缺陷. >必要时选择MySQL COUNT.这里的缺陷是,如果你要计算很多行,那么它可能会很慢,特别是当你必须在看似每个页 ...

  6. md5加密数据表中的密码php,JSP_使用MD5加密数据库中的用户密码(一),我们知道,现在网络上一般的 - phpStudy...

    使用MD5加密数据库中的用户密码(一) 我们知道,现在网络上一般的网站,稍微完善一点的,往往都需要用户先注册,提供诸如电子邮件.账号.密码等信息以后,成为网站栏目的注册用户,才可以享受网站一些特殊栏目 ...

  7. 让你提前认识软件开发(28):数据库存储过程中的重要表信息的保存及相关建议...

    第2部分 数据库SQL语言 数据库存储过程中的重要表信息的保存及相关建议 1. 存储过程中的重要表信息的保存 在非常多存储过程中,会涉及到对表数据的更新.插入或删除等,为了防止改动之后的表数据出现故障 ...

  8. 一条SQL语句查询数据库中的所有表、存储过程、触发器

    一条SQL语句查询数据库中的所有表.存储过程.触发器 (sysobjects表信息)   该条语句查询返回所有的用户表 select * from sysobjects where xtype='u' ...

  9. sp_MSforeachtable简介; 遍历数据库中的所有表运行命令

    介绍 (Introduction) There have always been some undocumented objects in SQL Server that are used inter ...

最新文章

  1. 创业者如何小步快跑,从0开始实现自己的产品?
  2. HALCON选择标定板文件
  3. php文件之间相互引用路径问题的一般处理方法
  4. linux内核网络协议栈--kernel bridge转发逻辑(十一)
  5. SpringBoot AOP完全讲解一:基础概念
  6. oracle vm 安装虚拟机小bug
  7. Java GC系列(1):Java垃圾回收简介
  8. 【转载】 vs2005视频教程 之 抽象类和接口 四 [视频]
  9. String课后作业
  10. 物联网卡云平台如何分析信息数据
  11. 变量声明提升和函数声明提升
  12. cocoa和cocoa Touch的区别
  13. 送你给你最爱的人,表白神器!!!
  14. 【笔记】玩转CSS3新特性_from_JSPang
  15. 2021.9月win10补丁造成共享打印机问题报错0X0000011b
  16. java Web 前后端交互
  17. js PhotoSwipe库开源的手机版相册产品的Code.PhotoSwipe.attach方法使用
  18. python如何注释一段代码_python如何注释
  19. 蓝桥牌型种数 C语言解法
  20. 【python】python绘制相关性热力图

热门文章

  1. ibmmq 通道命令_IBM_MQ常用命令的.doc
  2. php。defined,PHP defined()函数的使用图文详解
  3. c语言 坐标系转换 axistoradius,dynamo编程语言翻译.pdf
  4. Word那些你不知道的快捷功能
  5. python搭建可视化管理平台_搭建可视化数据平台 superset
  6. 记录一下有关ChArUco标定板
  7. VS创建props属性表并在新项目中导入props属性表
  8. 小米5x_除了一亿像素,对于小米CC9pro可能你还要了解这些
  9. 远哥谈 使用WebSocket开发在线实时看远程服务器log日志的工具
  10. Net设计模式实例之桥接模式( Bridge Pattern)(2)