Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
ユーザ ID に対して PUBLISH 権限を付与します。PUBLISH 権限を付与するには、SYS_REPLICATION_ADMIN_ROLE システムロールが必要です。
GRANT PUBLISH TO userid
SQL Remote インストール環境内の各データベースは、出力メッセージ内でユーザ ID により識別され、「パブリッシャ」と呼ばれます。GRANT PUBLISH 文は、これらの出力メッセージと関連付けられているパブリッシャユーザ ID を設定します。パブリッシャを変更するには、現在のパブリッシャから PUBLISH 権限を取り消して (REVOKE PUBLISH)、それらを新しいパブリッシャに付与します。
データベースパブリッシャは、次のように特別値 CURRENT PUBLISHER をクエリすることによって決定できます。
SELECT CURRENT PUBLISHER;
パブリッシャがない場合、CURRENT PUBLISHER の値は NULL になります。
CURRENT PUBLISHER 特別値を、カラムのデフォルトの設定として使用できます。CURRENT PUBLISHER カラムをテーブルのレプリケーションを行う際のプライマリキーに含めると、複数サイトでのアップデートによりプライマリキーの矛盾が発生するのを回避できるので便利です。
パブリッシャを変更するには、まず REVOKE PUBLISH 文を使って現在のパブリッシャを削除し、それから GRANT PUBLISH 文を使って新しいパブリッシャを作成します。
この文を実行すると、PUBLIC.db_publisher データベース オプションの値が変更されます。
SET ANY SYSTEM OPTION システム権限が必要です。
オートコミット。
SQL/2008 ベンダー拡張。
次の文は、データベースパブリッシャをユーザ ID JohnS に設定します。
GRANT PUBLISH TO JohnS;
次の文は、JohnS からデータベースパブリッシャを取り消して IrisM に付与します。
REVOKE PUBLISH FROM JohnS; GRANT PUBLISH TO IrisM;