次の方法で共有


sp_helppublication (Transact-SQL)

適用対象: SQL ServerAzure SQL Managed Instance

パブリケーションに関する情報を返します。 SQL Server パブリケーションの場合、このストアド プロシージャはパブリッシャー側のパブリケーション データベースで実行されます。 Oracle パブリケーションの場合、このストアド プロシージャは、任意のデータベース上のディストリビューター側で実行されます。

Transact-SQL 構文表記規則

構文

sp_helppublication_snapshot
    [ @publication = ] N'publication'
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

引数

[ @publication = ] N'publication'

表示するパブリケーションの名前。 @publicationは sysname で、既定値は %、すべてのパブリケーションに関する情報を返します。

[ @publisher = ] N'publisher'

SQL Server 以外のパブリッシャーを指定します。 @publisherは sysname で、既定値は NULL.

Note

SQL Server パブリッシャー にパブリケーション情報を要求するときは、パブリッシャーを指定しないでください。

結果セット

列名 データ型 説明
pubid int パブリケーションの ID。
name sysname パブリケーションの名前。
restricted int 単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。
status tinyint パブリケーションの現在の状態。

0 = 非アクティブ。
1 = アクティブです。
task 旧バージョンとの互換性のために用意されています。
replication frequency tinyint レプリケーション周期の種類。

0 = トランザクション
1 = スナップショット
synchronization method tinyint 同期化モード。

0 = ネイティブ一括コピー プログラム (bcp ユーティリティ)
1 = 文字の一括コピー
3= 同時実行。つまり、ネイティブ一括コピー (bcp ユーティリティ) は使用されますが、スナップショット中にテーブルはロックされません。
4= Concurrent_c。つまり、文字の一括コピーは使用されますが、スナップショット中にテーブルはロックされません。
description nvarchar (255) パブリケーションの説明 (省略可能)。
immediate_sync bit スナップショット エージェントを実行するたびに同期ファイルを作成するか再作成するかを指定します。
enabled_for_internet bit ファイル転送プロトコル (FTP) やその他のサービスを使用して、パブリケーションの同期ファイルをインターネットに公開するかどうかを指定します。
allow_push bit パブリケーションでプッシュ サブスクリプションを許可するかどうかを指定します。
allow_pull bit パブリケーションでプル サブスクリプションを許可するかどうかを指定します。
allow_anonymous bit パブリケーションで匿名サブスクリプションを許可するかどうかを指定します。
independent_agent bit このパブリケーションのスタンドアロン ディストリビューション エージェントがあるかどうかを指定します。
immediate_sync_ready bit スナップショット エージェントが、新しいサブスクリプションで使用できるスナップショットを生成したかどうかを指定します。 このパラメーターは、パブリケーションが新しいサブスクリプションまたは再初期化されたサブスクリプションで常にスナップショットを使用できるように設定されている場合にのみ定義されます。
allow_sync_tran bit パブリケーションで即時更新サブスクリプションを許可するかどうかを指定します。
autogen_sync_procs bit 即時更新サブスクリプションをサポートするストアド プロシージャを自動的に生成するかどうかを指定します。
snapshot_jobid binary(16) スケジュールされたタスク ID。
retention int 指定されたパブリケーションに対して保存する変更の量 (時間単位)。
has subscription bit パブリケーションにアクティブなサブスクリプションがあるかどうかを指定します。 1 は、パブリケーションにアクティブなサブスクリプションがあることを意味し 0 、パブリケーションにサブスクリプションがないことを意味します。
allow_queued_tran bit パブリッシャーで適用できるようになるまで、サブスクライバーでの変更のキューを無効にするかどうかを指定します。 の場合 0、サブスクライバーでの変更はキューに登録されません。
snapshot_in_defaultfolder bit スナップショット ファイルを既定のフォルダーに格納するかどうかを指定します。 の場合0、スナップショットファイルは、alternate_スナップショット_folderで指定された別の場所に格納されます。 の場合1、スナップショットファイルは既定のフォルダーにあります。
alt_snapshot_folder nvarchar (255) スナップショットの代替フォルダーの場所を指定します。
pre_snapshot_script nvarchar (255) ファイルの場所へのポインターを .sql 指定します。 ディストリビューション エージェントは、サブスクライバー側でスナップショットを適用するとき、レプリケートされたオブジェクト スクリプトより前に、プリスナップショット スクリプトを実行します。
post_snapshot_script nvarchar (255) ファイルの場所へのポインターを .sql 指定します。 ディストリビューション エージェントは、他のすべてのレプリケートされたオブジェクト スクリプトとデータが初期同期中に適用された後、スナップショット後スクリプトを実行します。
compress_snapshot bit alt_スナップショット_folderの場所に書き込まれるスナップショットを Microsoft CAB 形式に圧縮することを指定します。 0は、スナップショットが圧縮されていないことを指定します。
ftp_address sysname ディストリビューターの FTP サービスのネットワーク アドレス。 ここでは、サブスクライバーのディストリビューション エージェントまたはマージ エージェントがパブリケーション スナップショット ファイルを取得する場所を指定します。
ftp_port int ディストリビューターの FTP サービスのポート番号。
ftp_subdirectory nvarchar (255) パブリケーションが FTP を使用したスナップショットの伝達をサポートしている場合に、サブスクライバーのディストリビューション エージェントまたはマージ エージェントがスナップショット ファイルを取得できる場所を指定します。
ftp_login sysname FTP サービスへの接続に使用するユーザー名。
allow_dts bit パブリケーションでデータを変換できるかどうかを指定します。 0 は、DTS 変換が許可されていないことを指定します。
allow_subscription_copy bit このパブリケーションをサブスクライブするサブスクリプション データベースをコピーできるかどうかを指定します。 0 は、コピーが許可されていないことを意味します。
centralized_conflicts bit 競合レコードがパブリッシャーに格納されるかどうかを示します。

0 = 競合レコードは、パブリッシャーと、競合の原因となったサブスクライバーの両方に格納されます。
1 = 競合レコードはパブリッシャーに格納されます。
conflict_retention int 競合の保持期間を日数で指定します。
conflict_policy int キュー更新サブスクライバー オプションを使用するときに続く競合解決ポリシーを指定します。 次のいずれかの値を指定します。

1 = パブリッシャーが競合を優先します。
2 = サブスクライバーが競合を優先します。
3 = サブスクリプションが再初期化されます。
queue_type 使用されるキューの種類。 次のいずれかの値を指定します。

msmq = Microsoft メッセージ キューを使用してトランザクションを格納します。
sql = SQL Server を使用してトランザクションを格納します。
注: メッセージ キューのサポートは廃止されました。
backward_comp_level データベース互換性レベル。次のいずれかの値を指定できます。

90 = SQL Server 2005 (9.x)
100 = Microsoft SQL Server 2008 (10.0.x)
publish_to_AD bit パブリケーションを Microsoft Active Directory に発行するかどうかを指定します。 値が 1 発行されていることを示し、値は 0 発行されていないことを示します。
allow_initialize_from_backup bit サブスクライバーでは、最初のスナップショットではなくバックアップから、このパブリケーションへのサブスクリプションを初期化できるかどうかを示します。 1 は、サブスクリプションをバックアップから初期化できることを意味し 0 、初期化できないことを意味します。 詳細については、「スナップショットなしでトランザクション サブスクリプションを初期化する」を参照してください。トランザクション サブスクライバーは、スナップショットを使用しません。
replicate_ddl int パブリケーションでスキーマ レプリケーションがサポートされているかどうかを示します。 1 は、パブリッシャーで実行されるデータ定義言語 (DDL) ステートメントがレプリケートされることを示し 0 、DDL ステートメントがレプリケートされていないことを示します。 詳細については、「パブリケーション データベースでのスキーマの変更」を参照してください。
enabled_for_p2p int パブリケーションをピアツーピア レプリケーション トポロジで使用できるかどうかを指定します。 1 は、パブリケーションがピアツーピア レプリケーションをサポートしていることを示します。 詳細については、「ピア ツー ピア - トランザクション レプリケーション」を参照してください
publish_local_changes_only int 単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。
enabled_for_het_sub int パブリケーションが SQL Server 以外のサブスクライバーをサポートするかどうかを指定します。 値は 1 、SQL Server 以外のサブスクライバーがサポートされていることを意味します。 値は 0 、SQL Server サブスクライバーのみがサポートされることを意味します。 詳細については、「 Non-SQL Server Subscribers」を参照してください。
enabled_for_p2p_conflictdetection int ピア ツー ピア レプリケーションが有効になっているパブリケーションでの競合をディストリビューション エージェントが検出するかどうかを指定します。 値は 1 競合が検出されることを意味します。 詳細については、「 ピア ツー ピア レプリケーションでのピア ツー ピア - 競合検出」を参照してください
originator_id int ピア ツー ピア トポロジ内のノードの ID を指定します。 この ID は、enabled_for_p2p_conflictdetectionが > に設定されている場合に競合検出に1使用されます。 既に使用されている ID の一覧については、MSpeer_originatorid_history システム テーブルに対してクエリを実行します。
p2p_continue_onconflict int 競合が検出されたときに、ディストリビューション エージェントが変更の処理を続行するかどうかを指定します。 値は 1 、エージェントが変更の処理を続行することを意味します。

注意: 既定値 0の > を使用することをお勧めします。 このオプションを1設定すると、ディストリビューション エージェントは、最も高い発信元 ID であるノードから競合する行を適用することで、トポロジ内のデータの収束を試みます。 このメソッドでは、収束は保証されません。 競合が検出された後は、トポロジの整合性を確保する必要があります。 詳細については、「ピア ツー ピア - ピア ツー ピア レプリケーションでの 競合検出」の「競合の処理」を参照してください
allow_partition_switch int パブリッシュされたデータベースに対してステートメントを実行できるかどうかを ALTER TABLE...SWITCH 指定します。 詳細については、「パーティション テーブルとパーティション インデックスのレプリケート」を参照してください。
replicate_partition_switch int パブリッシュされたデータベースに対して実行されるステートメントをサブスクライバーにレプリケートするかどうかを ALTER TABLE...SWITCH 指定します。 このオプションは、に設定1されている場合allow_partition_switchにのみ有効です。
enabled_for_p2p_lastwriter_conflictdetection int ピアツーピア レプリケーションが有効になっているパブリケーションに対して、ディストリビューション エージェントが最後のライター競合検出の構成と解決の競合を検出するかどうかを指定します。 値は、最後の 1 ライターの競合が検出されることを意味します。

適用対象: SQL Server 2019 (15.x) CU 13 以降のバージョン。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

sp_helppublicationは、スナップショットおよびトランザクション レプリケーションで使用されます。

sp_helppublication は、このプロシージャを実行しているユーザーが所有するすべてのパブリケーションに関する情報を返します。

DECLARE @myTranPub AS sysname
SET @myTranPub = N'AdvWorksProductTran' 

USE [AdventureWorks2022]
EXEC sp_helppublication @publication = @myTranPub
GO

アクセス許可

パブリッシャーの sysadmin 固定サーバー ロールのメンバー、またはパブリケーション データベースの固定データベース ロールdb_ownerのメンバー、またはパブリケーション アクセス リスト (PAL) 内のユーザーのみが実行sp_helppublicationできます。

SQL Server 以外のパブリッシャーの場合、ディストリビューターの sysadmin 固定サーバー ロールのメンバー、またはディストリビューション データベースの固定データベース ロールdb_ownerのメンバー、または PAL 内のユーザーのみが実行sp_helppublicationできます。