2011-07-29 11 views
10

実装内からストアプロシージャのスキーマ所有者を取得する方法はありますか?現在実行中のストアドプロシージャのスキーマ名を取得

保存されたプロクシはWorld.Perform_TaskUniverse.Perform_Taskです。ストアドプロシージャが実行されると、スキーマレベルのタスクを実行するためにスキーマの名前を取得し、そのスキーマ内のオブジェクト(テーブル、列など)を検索する必要があります。

私はSchema_Name()を試しましたが、ストアドプロシージャのスキーマ所有者ではなく、ログインしているユーザーのデフォルトスキーマ(dbo)を返します。

実行中のストアドプロシージャのスキーマを取得するにはどうすればよいですか? MSDNに

ここ

答えて

15

あなたが行く...

OBJECT_SCHEMA_NAME(@@PROCID) 

リンク:

は、スキーマスコープオブジェクト

のためのデータベース・スキーマ名を返します。

現在のTransact-SQLモジュールのオブジェクト識別子(ID)を返します。

+0

ありがとうございました。 – AlterWorld

関連する問題