Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > sqlserver查询数据库表数量

mysql和sqlserver查询数据库表的数量方法详解

作者:勇敢的_小小邱

这篇文章主要介绍了mysql和sqlserver查询数据库表的数量方法详解,本文给大家分享SQL语句写法,文末补充介绍了查询sqlserver 数据库中各表条数的语句,需要的朋友可以参考下

mysql和sqlserver查询数据库表的数量的方法

一、mysql查询数据库表的数量

1、查询mysql下所有数据库表的数量

SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES GROUP BY table_schema;

2、查询指定数据库的表的数量

SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES WHERE table_schema = '库名';

二、sqlserver查询数据库表的数量

1、查询指定数据库的表的数量(选择指定的sqlserver数据库后再执行语句)

SELECT count(*) FROM sys.objects WHERE type='U'   --统计表数量
SELECT NAME  FROM sys.objects WHERE type='U'      --列出表名称
或者
SELECT COUNT(*) FROM SysObjects Where XType='U'   --统计表数量
SELECT Name FROM SysObjects Where XType='U'       --列出表名称

2、xtype 的描述

(1)数据类型:char(2)。

 (2)对象类型。常用列。

xtype可以是下列对象类型中的一种: 

C = CHECK 约束  

D = 默认值或 DEFAULT 约束  

F = FOREIGN KEY 约束  

L = 日志  

FN = 标量函数 

IF = 内嵌表函数   

P = 存储过程   

PK = PRIMARY KEY 约束(类型是 K)   

RF = 复制筛选存储过程 

S = 系统表   

TF = 表函数   

TR = 触发器   

U = 用户表   

UQ = UNIQUE 约束(类型是 K) 

V = 视图   

X = 扩展存储过程 

查询sqlserver 数据库中各表条数

SELECT  ROW_NUMBER() OVER (ORDER BY All_Table.NAME) AS NO, 
            All_Table.NAME AS '表名(EN)',
            CONVERT(NVARCHAR(100),ISNULL(TableDesc.[VALUE],'-')) AS '表名(CN)',
            TabIndex.ROWS AS '记录数'
            FROM SYS.TABLES All_Table 
LEFT JOIN SYS.EXTENDED_PROPERTIES TableDesc ON (All_Table.OBJECT_ID = TableDesc.MAJOR_ID AND TableDesc.MINOR_ID = 0)--取表的名称两个条件
INNER JOIN SYSINDEXES TabIndex ON All_Table.OBJECT_ID=TabIndex.ID AND TabIndex.INDID < 2 
WHERE 1=1
 ORDER BY TabIndex.ROWS DESC

到此这篇关于mysql和sqlserver查询数据库表的数量的方法的文章就介绍到这了,更多相关sqlserver查询数据库表数量内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文