MSSQL 查询表:求知行数(mssql查询表有多少行)

据库中所有表的表名

在日常数据库工作中,我们经常会遇到查询某一数据库中所有表的表名这样一类问题。其中,在MSSQL中,可以使用SQL语句来实现此查询。

首先,我们需要查询某个特定的数据库中所有表的表名。例如,在MSSQL 中可以使用如下的SQL 语句来实现目的:

“`SELECT o.name

FROM sysobjects o

WHERE o.type = ‘U’

AND OBJECTPROPERTY(o.id, N’IsMSShipped’) = 0


其中,sysobjects 是MSSQL 数据库中包含所有对象名称的表,而 ‘U’ 是表示用户定义表类型的标识符,'IsMSShipped' 表示是否是系统定义的表,如果是0表示用户自定义表。

如果要查询当前数据库中所有表的表名,则可以使用如下的SQL查询语句:

``SELECT o.name
FROM sysobjects o
WHERE o.type = 'U'
AND OBJECTPROPERTY(o.id, N'IsMSShipped') = 0
AND o.name not like 'sys%'``

这条语句除了上面那条SQL语句的结果外,还将过滤掉sys开头的系统表,以便只查询当前数据库自定义的表的表名。

此外,如果你希望在某个特定的schema中查询数据表的表名,那么可以使用如下的查询语句:

``SELECT o.name
FROM sysobjects o
JOIN sys.schemas s
ON o.uid = s.schema_id
WHERE o.type = 'U'
AND s.name = 'dbo'
``

其中,s.name = 'dbo'表示只查询dbo schema中的表,可以修改为其他任何schema。

综上所述,我们可以用MSSQL语句来查询某个指定数据库、schema或者当前数据库中所有表的表名,以便实现日常对数据库中表名查询的需求。

数据运维技术 » MSSQL 查询表:求知行数(mssql查询表有多少行)