• ベストアンサー

他のデータベースのオブジェクト情報を参照するには?

接続先データベース内にあるストアドプロシージャの存在をチェックするのにsysobjectsが使えますが、他のデータベースのストアドプロシージャが存在するかをチェックする方法はないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

sysobjectsを使用する際、たとえば   SELECT COUNT(*) FROM sysobjects のように使いますが、   SELECT COUNT(*) FROM [接続先データベース].[接続時アカウント].sysobjects の略になっています。 もし接続時アカウントが参照したいデータベースに対する十分な権限を持っていれば   SELECT COUNT(*) FROM [参照したいデータベース]..sysobjects のようにして「参照したいデータベース」のsysobjectsを参照することができます。 例えば   SELECT COUNT(*) FROM tempdb..sysobjects のように使います。

lovesens
質問者

お礼

この方法で参照することができました。ありがとうございます!

その他の回答 (1)

回答No.1

>他のデータベースのストアドプロシージャが存在するかを・・ 他のデータベースとは、何を指していますか? Oracleなど、他のRDBMSでしょうか? そうであるなら、対象とするRDBが何なのか判りませんが、 そのRDB特有の方法でしか調べられないと思います。

lovesens
質問者

補足

同じSQLServer内に作成した複数のデータベースの中で、接続していないデータベースのことです。

関連するQ&A