我一直在大量服务器上运行查询,而在其中只有三个(SQL2000,SQL2005和SQL2008)上,查询失败。我已将其归结为引用另一个数据库中的表格。
SELECT * FROM MASTER.dbo.syslogins AS syslogins
哪个适用于99%的服务器,但三个服务器上有:
Invalid object name 'MASTER.dbo.syslogins'
如果我切换到主数据库并运行
SELECT * FROM dbo.syslogins AS syslogins
然后它有效。我还通过运行
检查了我的权限SELECT IS_SRVROLEMEMBER('sysadmin');
返回1。 那么为什么引用MASTER.dbo.syslogins表会失败?
答案 0 :(得分:1)
也许服务器设置了区分大小写的排序规则。尝试
SELECT * FROM master.dbo.syslogins