SQL Server2008のユーザー定義テーブルタイプについて質問があります。
ASP.NETアプリケーションの1つが必要な場合は、SQL Server 2008で独自のテーブルタイプを定義して、それらをストアドプロシージャのパラメーターとして使用します(ASP.NETアプリケーションでsqlコマンドを実行する場合、DataTableオブジェクトをストアドプロシージャのパラメーターとして渡します。例についてはこちらをご覧ください)
問題は、ASP.NETからSQLコマンド(ストアドプロシージャの実行)を実行すると、次のエラーが発生することです。
オブジェクト 'ourTableType'、データベース 'ourDatabase'、スキーマ 'ourSchema'に対するEXECUTE権限が拒否されました。
どうしてこんなことに?ユーザー定義のテーブルタイプに権限を設定する必要があるのはなぜですか?それを使用するストアドプロシージャだけに権限を設定するだけでは不十分なのはなぜですか?そして、私たちは、なぜ何もありませんどのように関係なく、それを設定する必要がある場合はEXECUTE
プロパティウィンドウの何で設定するアクセス権の種類は、(私は見ることができControl
、References
、Take Ownership
、View Definition
)?
またControl
、プロパティウィンドウでアクセス許可をに設定すると問題が解決し、ストアドプロシージャが問題なく実行されることもわかりません。