ストアドプロシージャを通じてのみ更新したい繊細な価格列があります。更新するように設計されたストアドプロシージャを使用していない場合、すべてのコードまたは手動でこれらの価格列の値を変更しようとすると失敗します。
トリガーとトークンテーブルを使用してこれを実装することを検討しています。私が考えているアイデアは、トークンテーブルを持つことです。ストアドプロシージャは、最初にトークンテーブルに値を挿入する必要があります。次に、価格列を更新します。更新トリガーは、更新された行のトークンテーブルにトークンが存在するかどうかを確認します。見つかった場合、続行します。トークンが見つからない場合、例外をスローし、更新トランザクションを失敗させます。
この制限を実装する良い/より良い方法はありますか?
1
列ベースのセキュリティのビューを使用できます。それはトリガーよりもはるかにエレガントです。ビューに対する権限をユーザーに与えますが、基礎となるデータは与えません。
—
トーマスストリンガー
それは良い点です。ただし、接続プーリングを使用している多くのアプリケーションを中断することなく、問題は未解決のままです。
—
エリアス
これが「接続プーリングを使用している多くのアプリケーションを破壊する」ことをどのように説明できますか?
—
アーロンバートランド