仅列出我的应用使用的SQL Server表(SSMS中“表”树视图中的表)

问题描述 投票:0回答:1

我在弄清楚如何只获取在dbname-> tables下的SSMS树视图中显示的表的列表时遇到麻烦。我不需要系统表,也不需要任何视图,等等。我只希望显示在树视图的表视图下的表。我试过了:

Select * from dbname.INFORMATION_SCHEMA.TABLES
 Where dbname.INFORMATION_SCHEMA.TABLES.TABLE_TYPE = 'BASE TABLE'

但是,这不仅给我提供了表下方树视图中的内容。我要解决的问题是那里有7000多个表,并且我有一个proc可以“隐藏”我从未看过的表,但是我需要将其批量应用到仅“表”列表中的行-count =0。在此先感谢。

编辑:请不要为我最终想做的事情而分心...这只是出于背景考虑。主要问题是“如何获取特定数据库的“表”树视图下的表列表。”

sql server ssms
1个回答
0
投票
USE YOURDBNAME
GO 
SELECT *
FROM sys.Tables
GO

0
投票

似乎在之后是[[实际上:

SELECT [name] FROM sys.tables t WHERE t.is_ms_shipped = 0 AND t.[type] = 'U';
但是,当然,在系统数据库中有用户表的事实是另一个问题。
© www.soinside.com 2019 - 2024. All rights reserved.