sp_helppublication (Transact-SQL)
パブリケーションに関する情報を返します。Microsoft SQL Server パブリケーションの場合、このストアド プロシージャは、パブリッシャ側でパブリケーション データベースについて実行されます。Oracle パブリケーションの場合、このストアド プロシージャは、任意のデータベース上のディストリビュータ側で実行されます。
構文
sp_helppublication [ [ @publication = ] 'publication' ]
[ , [ @found=] found OUTPUT]
[ , [ @publisher = ] 'publisher' ]
引数
- [ @publication = ] 'publication'
表示するパブリケーションの名前を指定します。publication のデータ型は sysname で、既定値は % です。既定値は、すべてのパブリケーションに関する情報を返すことを意味します。
- [ @found = ] 'found' OUTPUT
行を返すことを示すフラグです。found のデータ型は int です。これは OUTPUT パラメータの 1 つであり、既定値は 23456 です。1 は、パブリケーションが見つかったことを示します。0 は、パブリケーションが見つからないことを示します。
[ @publisher = ] 'publisher'
SQL Server 以外のパブリッシャを指定します。publisher のデータ型は sysname で、既定値は NULL です。メモ : SQL Server パブリッシャからのパブリケーション情報を要求する場合は、publisher は指定しないでください。
結果セット
列名
データ型
説明
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_snapshot_folder で指定された代替位置に格納されています。1 の場合、スナップショット ファイルは既定のフォルダに格納されています。
alt_snapshot_folder
nvarchar(255)
スナップショットの代替フォルダの場所。
pre_snapshot_script
nvarchar(255)
.sql ファイルの場所を指すポインタ。ディストリビューション エージェントでは、サブスクライバでスナップショットが適用されるとき、レプリケートされたオブジェクト スクリプトよりも前に、プリスナップショット スクリプトが実行されます。
post_snapshot_script
nvarchar(255)
.sql ファイルの場所を指すポインタ。最初の同期時、ディストリビューション エージェントでは、他のすべてのレプリケートされたオブジェクト スクリプトとデータが適用された後、ポスト スナップショット スクリプトが実行されます。
compress_snapshot
bit
alt_snapshot_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 Message Queuing を使用してトランザクションを格納します。
sql = SQL Server を使用してトランザクションを格納します。
メモ :
Message Queuing の使用は現在サポートされていません。
backward_comp_level
データベースの互換性レベル。次のいずれかの値をとります。
10 = Microsoft SQL Server 7.0
20 = SQL Server 7.0 Service Pack 1
30 = SQL Server 7.0 Service Pack 2
35 = SQL Server 7.0 Service Pack 3
40 = Microsoft SQL Server 2000
50 = SQL Server 2000 Service Pack 1
60 = SQL Server 2000 Service Pack 3
90 = Microsoft SQL Server 2005
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 サブスクライバだけがサポートされることを示します。詳細については、「SQL Server 以外のサブスクライバ」を参照してください。
解説
sp_helppublication は、スナップショットおよびトランザクション レプリケーションで使用します。
sp_helppublication では、このプロシージャを実行するユーザーが所有しているすべてのパブリケーションに関する情報が返されます。
権限
sp_helppublication を実行できるのは、パブリッシャの sysadmin 固定サーバー ロールのメンバ、パブリケーション データベースの db_owner 固定データベース ロールのメンバ、またはパブリケーション アクセス リスト (PAL) のユーザーだけです。
SQL Server 以外のパブリッシャの場合、sp_helppublication を実行できるのは、ディストリビュータの sysadmin 固定サーバー ロールのメンバ、ディストリビューション データベースの db_owner 固定データベース ロールのメンバ、または PAL のユーザーだけです。
戻り値
0 (成功) または 1 (失敗)
使用例
DECLARE @myTranPub AS sysname
SET @myTranPub = N'AdvWorksProductTran'
USE [AdventureWorks]
EXEC sp_helppublication @publication = @myTranPub
GO
参照
関連項目
sp_addpublication (Transact-SQL)
sp_changepublication (Transact-SQL)
sp_droppublication (Transact-SQL)
レプリケーション ストアド プロシージャ (Transact-SQL)
その他の技術情報
パブリケーションのプロパティを表示および変更する方法 (レプリケーション Transact-SQL プログラミング)