不存在于information_schema或systables中的表如何发生?

时间:2015-03-19 17:41:37

标签: sql-server information-schema

我经常遇到MSSQL数据库,这些数据库的表格多于information_schemasystables中列出的表格。

例如,我querying a database right now但只获取表格spt_fallback_dbspt_fallback_devspt_fallback_usgspt_monitorspt_values 。 (1)

这是怎么发生的?

并且 - 可以轻松修复吗?

(1)我应该澄清这不是一个权限问题,因为我是数据库中的sysadmin;有大约200张桌子,我完全允许所有这些桌子。

1 个答案:

答案 0 :(得分:0)

@DadZone是对的钱,查询有一些问题。 我正在使用:

DECLARE @command varchar(1000) 
SELECT @command = 'SELECT * FROM sysobjects WHERE xtype=''U'' ' 
EXEC sp_MSforeachdb @command

但它只会显示系统表。然后我切换到一个更直接的查询,看看发生了什么,并能够查看表:

use MYDATABASENAME;
SELECT * FROM sysobjects WHERE xtype='U'