选择 sysobjects 中具有名为“mytable”表的所有数据库;与架构无关?
对于给定的 sql 2000 - 2008 服务器,我想在该服务器上找到任何名为 dbo.[MyTable] 的表。此外,如何查找具有名为 [dbo].[MyTable] 和 [AnySchemaName].[MyTable] 表的所有数据库。有没有像 spTables MyTable 这样简单的 sp_ 命令?或者“sp_AllDatabaseTable [MyTable]”?
我想将其打印出来,例如:
ServerName Database SchemaName MyTable Date Created
----------- --------- ----------- --------- -------------
Thx
For a given sql 2000 - 2008 server I want to find any table named dbo.[MyTable] on that server. In addition, how do I find all databases that have a table named [dbo].[MyTable] and [AnySchemaName].[MyTable]. Is there a simple sp_ command like spTables MyTable? Or 'sp_AllDatabaseTable [MyTable]'?
I want to print it out like:
ServerName Database SchemaName MyTable Date Created
----------- --------- ----------- --------- -------------
Thx
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我真的更喜欢一个既不使用 CURSORS 也不使用 sp_msforeachdb 的解决方案。
下面的解决方案为您提供了一个想法,您可以根据自己的需要进行调整。
I really would prefer a solution that does not use either CURSORS nor sp_msforeachdb.
The solution below is gives you an idea, and you can adapt it to your own needs.
我更喜欢基于集合的方法:
I prefer a set based approach:
当然,您可以使用 sp_msforeachdb 来实现此目的,但您需要记住,fhis 函数既没有文档记录,也没有官方支持。而且,有时它会破裂。有关更多信息,请参见这里 制作更可靠、更灵活的
sp_MSforeachdb
您可以使用此脚本在所有数据库中按名称搜索表。
我从 在 SQL Server 的每个数据库中查找表
另外,您可能想阅读此在所有数据库的所有对象中查找表名
Of course, you can use sp_msforeachdb for this purpose but you need to remember that fhis function is neither documented nor officially supported. Also, sometimes it breaks. More about it here Making a more reliable and flexible
sp_MSforeachdb
You can use this script to search table by name in all databases.
I took it from Find table in every database of SQL server
Also, you may want to read this Find table name in all objects of all databases
我本来会说
但你不需要这样做,sysobjects 位于主表中并且无论如何都会对所有数据库执行此操作。
您应该能够轻松找到其他列。
I'd have said
But you don't need to, sysobjects is in the master table and does it for all databases anyway.
You should be able find the other columns easily enough.