sql 查询所有表以及表结构
查询数据库中所有的表:
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 查询所有表以及表结构的更多相关文章
- SQL查询数据库信息, 数据库表名, 数据库表信息
SQL查询数据库信息, 数据库表名, 数据库表信息 ---------------------------------------------- -- 以下例子, 在sql_server 中可以直接运 ...
- sql 查询所有数据库、表名、表字段总结
ms sql server 1.查询所有表select [id], [name] from [sysobjects] where [type] = 'u' order by [name]2.查询所有数 ...
- sql查询数据库中所有表名
查询数据库里所有表名和字段名的语句SQL 查询所有表名:SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'SELECT * FROM INFORMATION_SCHE ...
- 【SQL查询】连接多表_join
1. inner join 返回两表相匹配的数据,做表中的“1, 2” 和右表中的“5, 6”都不会显示. 2. left join 以左表为主,左表返回所 ...
- sql查询如何将A表数据name字段对应B表name字段得到对应的B表id主键然后添加A到表usel_id中
1.写这个的原因 最近在写公司项目的时候一个功能很是让我头疼如标题看到的一样,平时我们一般都只负责数据表的查询或者连表查询某一个字段和A表字段一起显示出来. 但是添加到A表还是头一次,第一天想了很久都 ...
- mysql数据库使用sql查询数据库大小及表大小
网上查了很多资料,最后发现一个可行的,分享如下: 数据库大小查询: select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from inform ...
- sql 查询数据库中每个表的大小
For example: exec sp_MSForEachTable @precommand=N'create table temp(name sysname,rows bigint,reserve ...
- SQL查询数据库名、表名、列名
1.获取所有用户名SELECT name FROM Sysusers where status='2' and islogin='1'islogin='1'表示帐户islogin='0'表示角色sta ...
- sql查询:存在A表而不在B表中的数据
A.B两表,找出ID字段中,存在A表,但是不存在B表的数据. 方法一:使用 not inselect distinct A.ID from A where A.ID not in (select ID ...
- sql 查询不存在左表的数据
select * from zyz_mgr_wlcyiduifu a left join WLCInformation b ona.wlcId=b.WLCInvestorApplyID where b ...
随机推荐
- Jboss getshell
Jboss 的安装需要 JDK 环境 JDK+JBOSS 包 初始环境配置 系统变量名 变量值 PATH %JAVA_HOME%\bin:%JAVA ...
- 修改Ueditor的图片上传地址
文件地址:ueditro/php/config.json /* 前后端通信相关的配置,注释只允许使用多行方式 */ { /* 上传图片配置项 */ "imageActionName" ...
- TypeScript -访问修饰符
class test extends egret.DisplayObjectContainer { public constructor() { /** * 1.不添加构造函数constructor ...
- node环境配置
1.进入node的官网https://nodejs.org/en/download/ 2.选择自己需要的安装包 3.下载之后,直接安装http://www.runoob.com/nodejs/node ...
- mobile_5 种常见适配_设备兼容
em 参照本身元素的 font-size rem 参照 html 根元素 的 font-size 1. rem 适配 (同一元素,在不同设备上,效果一样) 适用情况: 当页面大于 独立像素375 ...
- 剑指offer——python【第4题】重建二叉树
题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...
- -ms、-moz、-webkit -o
-ms-transform:rotate(7deg); //-ms代表ie内核 识别码-moz-transform:rotate(7deg); //-moz代表火狐内核识别码 -webkit-tran ...
- Autohotkey常用命令
//输入密码#1::send test1234sleep 600send {enter}return //打开程序; win + t: open total cmd#t::IfWinNotExist ...
- Mac 下安装Fiddler抓包工具
需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...
- 如何优雅的运行起jmeter
安装jdk 下载网站:http://www.oracle.com/,选个最新的版本就可以. 注意:11以后没有自动生成jre 配置环境变量 对于Java程序开发而言,主要会使用JDK的两个命令:jav ...