查询数据库中所有的表:

select [id], [name],0 as statu
from [sysobjects] where [type] = 'u' order by [name]

查询表结构:

--查询表结构
ALTER PROCEDURE [dbo].[ziduan] @name nvarchar(50)
AS
BEGIN
if ISNULL(@name,'')<>'' BEGIN
select
CAST( ROW_NUMBER() over(order by a.object_id) as nvarchar(50) ) as 编号,
c.TABLE_NAME as '表名',
a.name as 字段名,
Cast(
(case c.DATA_TYPE+'' when 'varchar' then 'varchar('+CONVERT(varchar(10),c.CHARACTER_MAXIMUM_LENGTH)+')'
when 'nvarchar' then 'nvarchar('+CONVERT(varchar(10),c.CHARACTER_MAXIMUM_LENGTH)+')'
when 'decimal' then 'decimal('+CONVERT(varchar(10),c.NUMERIC_PRECISION)+','+CONVERT(varchar(10),c.NUMERIC_SCALE)+')'
else cast( c.DATA_TYPE as nvarchar(50)) end )
as nvarchar(50))AS 数据类型,
(case c.IS_NULLABLE when 'YES' THEN 'Y' else 'N' end) as 是否为空,
'' AS 性质,
'' AS 取值范围,
CAST( ISNULL(b.value,'') as nvarchar(200) )as 描述
FROM
sys.columns a left join sys.extended_properties b
on (a.column_id=b.minor_id and a.object_id=b.major_id)
left join INFORMATION_SCHEMA.COLUMNS c on a.name=c.COLUMN_NAME
where a.object_id=object_id(@name)
and c.TABLE_NAME=@name order by a.column_id
END
else
select '请输入表名'
END

整理所有表结构数据:

--所有表结构数据

select [id], [name],0 as statu
into #t
from [sysobjects] where [type] = 'u' order by [name] create table #t2
(
编号 varchar(50),
表名 varchar(50),
字段名 varchar(50), 数据类型 sql_variant, --varchar(50),
是否为空 varchar(50),
性质 varchar(50),
取值范围 varchar(50),
描述 nvarchar(200) ) declare @c int ;
select @c= COUNT(1) from #t a where a.statu=0
while(@c>0)
begin declare @TableName nvarchar(50);
select top 1 @TableName=a.name from #t a where a.statu=0 insert into #t2 exec dbo.ziduan @TableName update a set a.statu=1 from #t a where a.statu=0 and a.name=@TableName set @c=@c-1; end select distinct a.表名 from #t2 a select * from #t2 a

sql 查询所有表以及表结构的更多相关文章

  1. SQL查询数据库信息, 数据库表名, 数据库表信息

    SQL查询数据库信息, 数据库表名, 数据库表信息 ---------------------------------------------- -- 以下例子, 在sql_server 中可以直接运 ...

  2. sql 查询所有数据库、表名、表字段总结

    ms sql server 1.查询所有表select [id], [name] from [sysobjects] where [type] = 'u' order by [name]2.查询所有数 ...

  3. sql查询数据库中所有表名

    查询数据库里所有表名和字段名的语句SQL 查询所有表名:SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'SELECT * FROM INFORMATION_SCHE ...

  4. 【SQL查询】连接多表_join

                          1. inner join 返回两表相匹配的数据,做表中的“1, 2” 和右表中的“5, 6”都不会显示. 2. left join 以左表为主,左表返回所 ...

  5. sql查询如何将A表数据name字段对应B表name字段得到对应的B表id主键然后添加A到表usel_id中

    1.写这个的原因 最近在写公司项目的时候一个功能很是让我头疼如标题看到的一样,平时我们一般都只负责数据表的查询或者连表查询某一个字段和A表字段一起显示出来. 但是添加到A表还是头一次,第一天想了很久都 ...

  6. mysql数据库使用sql查询数据库大小及表大小

    网上查了很多资料,最后发现一个可行的,分享如下: 数据库大小查询: select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from inform ...

  7. sql 查询数据库中每个表的大小

    For example: exec sp_MSForEachTable @precommand=N'create table temp(name sysname,rows bigint,reserve ...

  8. SQL查询数据库名、表名、列名

    1.获取所有用户名SELECT name FROM Sysusers where status='2' and islogin='1'islogin='1'表示帐户islogin='0'表示角色sta ...

  9. sql查询:存在A表而不在B表中的数据

    A.B两表,找出ID字段中,存在A表,但是不存在B表的数据. 方法一:使用 not inselect distinct A.ID from A where A.ID not in (select ID ...

  10. sql 查询不存在左表的数据

    select * from zyz_mgr_wlcyiduifu a left join WLCInformation b ona.wlcId=b.WLCInvestorApplyID where b ...

随机推荐

  1. Jboss getshell

     Jboss 的安装需要 JDK 环境 JDK+JBOSS 包  初始环境配置 系统变量名        变量值 PATH                  %JAVA_HOME%\bin:%JAVA ...

  2. 修改Ueditor的图片上传地址

    文件地址:ueditro/php/config.json /* 前后端通信相关的配置,注释只允许使用多行方式 */ { /* 上传图片配置项 */ "imageActionName" ...

  3. TypeScript -访问修饰符

    class test extends egret.DisplayObjectContainer { public constructor() { /** * 1.不添加构造函数constructor ...

  4. node环境配置

    1.进入node的官网https://nodejs.org/en/download/ 2.选择自己需要的安装包 3.下载之后,直接安装http://www.runoob.com/nodejs/node ...

  5. mobile_5 种常见适配_设备兼容

    em  参照本身元素的 font-size rem 参照 html 根元素 的 font-size 1. rem 适配   (同一元素,在不同设备上,效果一样) 适用情况: 当页面大于 独立像素375 ...

  6. 剑指offer——python【第4题】重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  7. -ms、-moz、-webkit -o

    -ms-transform:rotate(7deg); //-ms代表ie内核 识别码-moz-transform:rotate(7deg); //-moz代表火狐内核识别码 -webkit-tran ...

  8. Autohotkey常用命令

    //输入密码#1::send test1234sleep 600send {enter}return //打开程序; win + t: open total cmd#t::IfWinNotExist ...

  9. Mac 下安装Fiddler抓包工具

    需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...

  10. 如何优雅的运行起jmeter

    安装jdk 下载网站:http://www.oracle.com/,选个最新的版本就可以. 注意:11以后没有自动生成jre 配置环境变量 对于Java程序开发而言,主要会使用JDK的两个命令:jav ...