1

DB2 のテーブルからデータを選択するために、DB1 にビューを作成しました。「ビュー DB1.A を Select * from DB2.B として作成」と言います。

DB1 のみにアクセスできるユーザー「usr1」は、現在、このビューからデータを選択できません。次のエラーが表示されます: サーバー プリンシパル "usr1" は、現在のセキュリティ コンテキストではデータベース "DB2" にアクセスできません。

このようなシナリオは、Teradata の「With Grant」オプションを使用して DB1 から DB2 への読み取り専用アクセスを許可することで処理できることを知っています。SQL Serverに同様のオプションはありますか??

4

2 に答える 2

0

1) 次のリンクを使用して、ユーザー名をここまたはこれの DB2 データベースにマップします。

于 2012-05-17T21:48:45.910 に答える
0

私が思い出す限り、これがデフォルトで機能するのは、2 つの条件を満たしている場合のみです...
1. ビューの所有者は、基になるテーブルの所有者で
あり ます" アクティブ化

これらの条件のいずれかに失敗した場合は、ビューの所有者だけでなく、ビューをクエリしているユーザー/ログインのセキュリティ設定を構成する必要があります。

ビューもインライン テーブル値関数も、EXECUTE AS OWNERまたは同様のオプションを使用できません。

于 2012-05-17T21:57:49.330 に答える