4

私のデータベースは、SQL Server 2005 バックエンドに関連付けられた Access Data Project です。INSTEAD OFトリガーを使用するビューにフォームをバインドしようとしています。Access は、ビューが更新可能ではないと判断したため、フォームを読み取り専用にしています。明らかに、トリガーは考慮されていません。

問題は、SQL Server のメタデータがビューを更新できないと言っていることだと思います。INFORMATION_SCHEMA.VIEWSたとえば、クエリを実行すると、 IS_UPDATABLE= NO が表示されます。それにもかかわらず、ステートメントを使用するか、SSMS GUI を使用することで、間違いなくビューを更新できます。UPDATE

このビューが本当に更新可能であることを Access に納得させるために使用できる方法を知っている人はいますか? このフォームへの読み取り/書き込みアクセスを取得する方法が他にもあることは知っていますが、このビューを使用して、特定のユーザーのアクセスを非常に特定のデータのサブセットに制限することを計画していました。この 1 つのビュー内にすべてのデータをカプセル化します。

4

1 に答える 1

1

アクセスには、リンクされたテーブルを更新可能にするために PK が必要です。これは、JET (または新しいものは何でも) エンジンが変更する行を一意に識別できるようにするためだと思います。

これは、このビューをインデックス付きビューに変換する必要があることを意味します。これは、潜在的に非常に複雑なワームの別の可能性です。

于 2013-02-26T21:22:16.717 に答える