呼び出し元が PROC を使用するために テーブル値パラメーターを使用すると、(直感的には) 実行権限を付与する
TVP で PROC を呼び出す人に入力します つまり
GRANT EXECUTE ON TYPE::[schema].[MyTVP] to [SomeRole]プレ>編集
ユーザーに付与された最小限のアクセス許可セットから作業することで、問題を再現できたと思います。重要なステップは、TVP の DBO またはスキーマ所有者が、
PROCで使用できるようにするために、TVP への次のアクセス権を付与することです。 (このアクセスがなければ、TVP 型の緩い変数を宣言できましたが、PROC では使用できませんでした)。GRANT REFERENCES ON TYPE::[schema].[MyTVP] to YOURROLE -- Or User.プレ>参照をここに許可 (もちろん
CREATE PROCEDUREも必要です 許可、および PROC で使用されるすべてのオブジェクトへの関連アクセス)PROC の利用者は、
GRANT EXECUTEも持つ必要があります。 最初の回答に従って、Proc および Type に対する許可。