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 = Transazionale1 = Snapshot |
synchronization method |
tinyint | Modalità di sincronizzazione:0 = Programma di copia bulk nativa (utilità bcp )1 = Copia bulk di caratteri3 = Simultaneo, il che significa che viene usata la copia bulk nativa (utilità bcp ), ma le tabelle non sono bloccate durante lo snapshot4 = 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
.