Condividi tramite


sp_repldropcolumn (Transact-SQL)

Elimina una colonna da un articolo di tabella esistente pubblicato. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

ms190489.note(it-it,SQL.90).gifImportante:
Questa stored procedure è osboleta e viene supportata solo per motivi di compatibilità con le versioni precedenti. È consigliabile utilizzarla solo con i server di pubblicazione di Microsoft SQL Server 2000 e i Sottoscrittori di ripubblicazione di SQL Server 2000.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_repldropcolumn [ @source_object = ] 'source_object', [ @column = ] 'column' 
    [ , [ @schema_change_script = ] 'schema_change_script' ] 
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ] 
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ] 

Argomenti

  • [ @source_object = ] 'source_object'
    Nome dell'articolo di tabella che include la colonna da eliminare. source_object è di tipo nvarchar(258) e non prevede alcun valore predefinito.
  • [ @column = ] 'column'
    Nome della colonna nella tabella da eliminare. column è di tipo sysname e non prevede alcun valore predefinito.
  • [ @schema_change_script = ] 'schema_change_script'
    Specifica il nome e il percorso di uno script di SQL Server utilizzato per modificare le stored procedure personalizzate generate dal sistema. schema_change_script è di tipo nvarchar(4000) e il valore predefinito è NULL. La replica consente di sostituire una o più procedure utilizzate per la replica transazionale con stored procedure personalizzate. schema_change_script viene eseguito dopo la modifica dello schema in un articolo di tabella replicato utilizzando sp_repldropcolumn e consente di eseguire una delle operazioni seguenti:

    • Se le stored procedure personalizzate vengono rigenerate automaticamente, è possibile utilizzare schema_change_script per eliminare le stored procedure personalizzate e sostituirle con stored procedure personalizzate definite dall'utente che supportano il nuovo schema.
    • Se le stored procedure personalizzate non vengono rigenerate automaticamente, è possibile utilizzare schema_change_scriptper rigenerarle o per creare stored procedure personalizzate definite dall'utente.
  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Attiva o disattiva la possibilità di invalidare lo snapshot. force_invalidate_snapshot è di tipo bit e il valore predefinito è 1.

    1 specifica che le modifiche all'articolo possono invalidare lo snapshot. In tal caso, il valore 1 consente l'esecuzione del nuovo snapshot.

    0 specifica che le modifiche apportate all'articolo non invalidano lo snapshot.

  • [ @force_reinit_subscription = ] force_reinit_subscription
    Attiva o disattiva la possibilità di reinizializzare la sottoscrizione. force_reinit_subscription è di tipo bit e il valore predefinito è 0.

    0 specifica che le modifiche apportate all'articolo non causano la reinizializzazione della sottoscrizione.

    1 specifica che le modifiche apportate all'articolo possono causare la reinizializzazione della sottoscrizione. In tal caso, il valore 1 consente la reinizializzazione della sottoscrizione.

Osservazioni

sp_repldropcolumn è obsoleta. Per rimuovere una colonna da un articolo di tabella replicato è consigliabile eseguire i comandi DDL (Data Definition Language) sulla tabella pubblicata. Se la replica DDL è attivata, i comandi DDL vengono replicati automaticamente durante la replica. Per ulteriori informazioni, vedere Modifiche allo schema nei database di pubblicazione.

sp_repladdcolumn è ancora necessaria durante la propagazione delle modifiche DDL dai Sottoscrittori di ripubblicazione in esecuzione in una versione precedente dei Sottoscrittori di Microsoft SQL Server 2000.

sp_repldropcolumn viene utilizzata in tutti i tipi di replica.

Quando si utilizza sp_repldropcolumn e si apporta una modifica allo schema di un articolo che appartiene a una pubblicazione che utilizza un pacchetto Data Transformation Services (DTS), tale modifica non viene propagata al Sottoscrittore e le procedure personalizzate per INSERT/UPDATE/DELETE non vengono rigenerate nei Sottoscrittori. È quindi necessario rigenerare il pacchetto DTS manualmente e apportare la modifica di schema corrispondente nei Sottoscrittori. Se non si esegue l'aggiornamento dello schema, l'agente di distribuzione potrebbe non applicare le modifiche successive. Prima di modificare uno schema, verificare che non esista alcuna transazione in sospeso da recapitare.

ms190489.note(it-it,SQL.90).gifImportante:
Dopo l'esecuzione di sp_repldropcolumn è necessario eseguire un backup del database di pubblicazione. Se non si esegue questa operazione, dopo il ripristino del database di pubblicazione può verificarsi un errore del processo di merge.

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin sul server di pubblicazione o i membri dei ruoli predefiniti del database db_owner o db_ddladmin nel database di pubblicazione possono eseguire sp_repldropcolumn.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Vedere anche

Riferimento

Stored procedure di sistema (Transact-SQL)

Altre risorse

Funzionalità obsolete nella replica di SQL Server 2005

Guida in linea e informazioni

Assistenza su SQL Server 2005