Condividi tramite


sp_helppublication (Transact-SQL)

Si applica a: SQL Server Istanza gestita di SQL di Azure

Restituisce informazioni su una pubblicazione. Per una pubblicazione di SQL Server, questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione. Per una pubblicazione Oracle, questa stored procedure viene eseguita in qualsiasi database del server di distribuzione.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

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

Argomenti

[ @publication = ] N'publication'

Nome della pubblicazione da visualizzare. @publication è sysname, con un valore predefinito %, che restituisce informazioni su tutte le pubblicazioni.

[ @publisher = ] N'publisher'

Specifica un server di pubblicazione non SQL Server. @publisher è sysname, con un valore predefinito .NULL

Nota

Non è consigliabile specificare publisher quando si richiedono informazioni sulla pubblicazione da un server di pubblicazione di SQL Server.

Set di risultati

Nome colonna Tipo di dati Descrizione
pubid int ID della pubblicazione.
name sysname Nome della pubblicazione.
restricted int Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.
status tinyint Stato corrente della pubblicazione.

0 = Inattivo.
1 = Attivo.
task Disponibile per compatibilità con le versioni precedenti.
replication frequency tinyint Tipo di frequenza della replica:

0 = Transazionale
1 = Snapshot
synchronization method tinyint Modalità di sincronizzazione:

0 = Programma di copia bulk nativa (utilità bcp )
1 = Copia bulk di caratteri
3 = Simultaneo, il che significa che viene usata la copia bulk nativa (utilità bcp ), ma le tabelle non sono bloccate durante lo snapshot
4 = Concurrent_c, il che significa che viene usata la copia bulk di caratteri, ma le tabelle non vengono bloccate durante lo snapshot
description nvarchar(255) Descrizione facoltativa della pubblicazione.
immediate_sync bit Specifica se i file di sincronizzazione vengono creati o ricreati ogni volta che viene eseguita la agente di snapshot.
enabled_for_internet bit Specifica se i file di sincronizzazione per la pubblicazione vengono esposti a Internet, tramite FTP (File Transfer Protocol) e altri servizi.
allow_push bit Specifica se le sottoscrizioni push sono consentite nella pubblicazione.
allow_pull bit Specifica se le sottoscrizioni pull sono consentite nella pubblicazione.
allow_anonymous bit Specifica se le sottoscrizioni anonime sono consentite nella pubblicazione.
independent_agent bit Specifica se è presente un agente di distribuzione autonomo per la pubblicazione.
immediate_sync_ready bit Specifica se l'agente di snapshot generato uno snapshot pronto per l'uso da parte delle nuove sottoscrizioni. Questo parametro viene definito solo se la pubblicazione è configurata in modo che sia sempre disponibile uno snapshot per le sottoscrizioni nuove o reinizializzate.
allow_sync_tran bit Specifica se è consentito creare sottoscrizioni ad aggiornamento immediato per la pubblicazione.
autogen_sync_procs bit Specifica se generare automaticamente stored procedure per supportare le sottoscrizioni ad aggiornamento immediato.
snapshot_jobid binary(16) ID dell'attività pianificata.
retention int Quantità di modifiche, espresse in ore, da salvare per la pubblicazione specificata.
has subscription bit Specifica se la pubblicazione dispone di una sottoscrizione attiva. 1 significa che la pubblicazione dispone di sottoscrizioni attive e 0 indica che la pubblicazione non dispone di sottoscrizioni.
allow_queued_tran bit Specifica se disabilita l'accodamento delle modifiche nel Sottoscrittore fino a quando non possono essere applicate nel server di pubblicazione. Se 0, le modifiche nel Sottoscrittore non vengono accodate.
snapshot_in_defaultfolder bit Specifica se i file di snapshot sono archiviati nella cartella predefinita. Se 0, i file snapshot vengono archiviati nel percorso alternativo specificato da alternate_snapshot_folder. Se 1, i file di snapshot sono disponibili nella cartella predefinita.
alt_snapshot_folder nvarchar(255) Specifica la posizione della cartella alternativa per lo snapshot.
pre_snapshot_script nvarchar(255) Specifica un puntatore a un .sql percorso di file. L'agente di distribuzione esegue lo script pre-snapshot prima dell'esecuzione degli script di oggetti replicati in fase di applicazione di uno snapshot in un Sottoscrittore.
post_snapshot_script nvarchar(255) Specifica un puntatore a un .sql percorso di file. Il agente di distribuzione eseguirà lo script di post-snapshot dopo l'applicazione di tutti gli altri script e dati degli oggetti replicati durante una sincronizzazione iniziale.
compress_snapshot bit Specifica che lo snapshot scritto nel percorso di alt_snapshot_folder deve essere compresso nel formato CAB Microsoft. 0 specifica che lo snapshot non è compresso.
ftp_address sysname Indirizzo di rete del servizio FTP per il server di distribuzione. Specifica la posizione in cui i file di snapshot della pubblicazione possono essere prelevati dall'agente di distribuzione o di merge di un Sottoscrittore.
ftp_port int Numero di porta del servizio FTP per il server di distribuzione.
ftp_subdirectory nvarchar(255) Specifica la posizione in cui sono disponibili i file di snapshot per il agente di distribuzione o agente di merge del sottoscrittore se la pubblicazione supporta la propagazione di snapshot tramite FTP.
ftp_login sysname Nome utente utilizzato per la connessione al servizio FTP.
allow_dts bit Specifica che la pubblicazione supporta le trasformazioni di dati. 0 specifica che le trasformazioni DTS non sono consentite.
allow_subscription_copy bit Specifica se la possibilità di copiare i database di sottoscrizione che sottoscrivono la pubblicazione è abilitata. 0 significa che la copia non è consentita.
centralized_conflicts bit Specifica se i record dei conflitti vengono archiviati nel server di pubblicazione:

0 = I record in conflitto vengono archiviati sia nel server di pubblicazione che nel sottoscrittore che ha causato il conflitto.
1 = I record in conflitto vengono archiviati nel server di pubblicazione.
conflict_retention int Specifica il periodo di memorizzazione dei conflitti, espresso in giorni.
conflict_policy int Specifica i criteri di risoluzione dei conflitti adottati quando viene utilizzata l'opzione per Sottoscrittori ad aggiornamento in coda. I possibili valori sono i seguenti:

1 = Il server di pubblicazione vince il conflitto.
2 = Il Sottoscrittore vince il conflitto.
3 = La sottoscrizione viene reinizializzata.
queue_type Specifica il tipo di coda da utilizzare. I possibili valori sono i seguenti:

msmq = Utilizzare Accodamento messaggi Microsoft per archiviare le transazioni.
sql = Usare SQL Server per archiviare le transazioni.
Nota: il supporto per Accodamento messaggi non è più disponibile.
backward_comp_level Livello di compatibilità del database e può essere uno dei valori seguenti:

90 = SQL Server 2005 (9.x)
100 = Microsoft SQL Server 2008 (10.0.x)
publish_to_AD bit Specifica se la pubblicazione viene pubblicata in Microsoft Active Directory. Un valore indica 1 che è pubblicato e un valore indica 0 che non è pubblicato.
allow_initialize_from_backup bit Specifica se i Sottoscrittori possono inizializzare una sottoscrizione di questa pubblicazione da un backup anziché da uno snapshot iniziale. 1 significa che le sottoscrizioni possono essere inizializzate da un backup e 0 significa che non possono. Per altre informazioni, vedere Inizializzare una sottoscrizione transazionale senza uno snapshot di un Sottoscrittore transazionale senza uno snapshot.
replicate_ddl int Indica se per la pubblicazione è supportata la replica dello schema. 1 indica che le istruzioni DDL (Data Definition Language) eseguite nel server di pubblicazione vengono replicate e 0 indicano che le istruzioni DDL non vengono replicate. Per altre informazioni, vedere Apportare modifiche allo schema nei database di pubblicazione.
enabled_for_p2p int Specifica se la pubblicazione può essere utilizzata in una topologia di replica peer-to-peer. 1 indica che la pubblicazione supporta la replica peer-to-peer. Per altre informazioni, vedere Peer-to-Peer - Replica transazionale.
publish_local_changes_only int Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.
enabled_for_het_sub int Specifica se la pubblicazione supporta sottoscrittori non SQL Server. Un valore indica 1 che i Sottoscrittori non SQL Server sono supportati. Un valore indica 0 che sono supportati solo i Sottoscrittori di SQL Server. Per altre informazioni, vedere Non-SQL Server Subscribers.
enabled_for_p2p_conflictdetection int Specifica se l'Agente di Distribuzione rileva i conflitti per una pubblicazione abilitata per la replica peer-to-peer. Un valore indica 1 che vengono rilevati conflitti. Per altre informazioni, vedere Peer-to-Peer - Conflict Detection in Peer-to-Peer Replication.For more information, see Peer-to-Peer - Conflict Detection in Peer-to-Peer Replication.
originator_id int Specifica un ID per un nodo in una topologia peer-to-peer. Questo ID viene usato per il rilevamento dei conflitti se enabled_for_p2p_conflictdetection è impostato su 1. Per un elenco di ID già usati, eseguire una query sulla tabella di sistema MSpeer_originatorid_history .
p2p_continue_onconflict int Specifica se l'agente di distribuzione continua a elaborare le modifiche quando viene rilevato un conflitto. Un valore indica 1 che l'agente continua a elaborare le modifiche.

Attenzione: è consigliabile usare il valore predefinito di 0. Quando questa opzione è impostata su 1, il agente di distribuzione tenta di convergere i dati nella topologia applicando la riga in conflitto dal nodo con l'ID origine più alto. Questo metodo non garantisce la convergenza. Dopo il rilevamento di un conflitto, è necessario assicurarsi che la topologia sia coerente. Per altre informazioni, vedere "Gestione dei conflitti" in Peer-to-Peer - Rilevamento dei conflitti nella replica peer-to-peer.
allow_partition_switch int Specifica se ALTER TABLE...SWITCH le istruzioni possono essere eseguite nel database pubblicato. Per altre informazioni, vedere Replicare tabelle e indici partizionati.
replicate_partition_switch int Specifica se ALTER TABLE...SWITCH le istruzioni eseguite sul database pubblicato devono essere replicate nei Sottoscrittori. Questa opzione è valida solo se allow_partition_switch è impostata su 1.
enabled_for_p2p_lastwriter_conflictdetection int Specifica se il agente di distribuzione rileva l'opzione Configura ultimi conflitti di rilevamento e risoluzione dei conflitti di scrittura per una pubblicazione abilitata per la replica peer-to-peer. Un valore indica 1 che vengono rilevati ultimi conflitti di scrittura.

Si applica a: SQL Server 2019 (15.x) CU 13 e versioni successive.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_helppublication viene usato nella replica snapshot e transazionale.

sp_helppublication restituisce informazioni su tutte le pubblicazioni di proprietà dell'utente che esegue questa procedura.

Esempi

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

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

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin nel server di pubblicazione o nei membri del ruolo predefinito del database db_owner nel database di pubblicazione o gli utenti nell'elenco di accesso alla pubblicazione (PAL) possono eseguire sp_helppublication.

Per un server di pubblicazione non SQL Server, solo i membri del ruolo predefinito del server sysadmin nel server di distribuzione o nei membri del ruolo predefinito del database db_owner nel database di distribuzione o gli utenti nell'elenco di accesso alla pubblicazione possono eseguire sp_helppublication.