Specificare le opzioni dello schema per la replica di SQL Server

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Questo argomento descrive come specificare opzioni di schema in SQL Server usando SQL Server Management Studio o Transact-SQL. Quando si pubblica una tabella o una vista, è possibile controllare le opzioni di creazione degli oggetti che vengono replicate per l'oggetto pubblicato. È possibile impostare queste opzioni quando viene creato l'articolo ed è possibile modificarle anche successivamente. Se queste opzioni non vengono specificate in modo esplicito per un articolo, verrà definito un set predefinito di opzioni.

Nota

Le opzioni predefinite dello schema disponibili quando si utilizzano le stored procedure di replica possono essere diverse dalle opzioni predefinite utilizzate quando gli articoli vengono aggiunti tramite SQL Server Management Studio.

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • Se si modificano le opzioni dello schema dopo la creazione di una pubblicazione, è necessario generare un nuovo snapshot.

Consigli

Utilizzo di SQL Server Management Studio

Specificare le opzioni dello schema, ad esempio se copiare i vincoli e i trigger nei Sottoscrittori, nella scheda Proprietà della finestra di dialogo Proprietà articolo - <Articolo>. Questa scheda è disponibile in Creazione guidata nuova pubblicazione e nella finestra di dialogo Proprietà pubblicazione - <Pubblicazione>. Per altre informazioni sull'uso della creazione guidata e l'accesso alla finestra di dialogo, vedere Creare una pubblicazione e Visualizzare e modificare le proprietà della pubblicazione.

Per specificare le opzioni dello schema

  1. Nella pagina Articoli di Creazione guidata nuova pubblicazione o nella finestra di dialogo Proprietà pubblicazione - <Pubblicazione> selezionare un articolo e quindi fare clic su Proprietà articolo.

  2. Selezionare gli articoli a cui si applicano le modifiche delle opzioni dello schema:

    • Fare clic su Imposta proprietà dell'articolo di <TipoOggetto> evidenziato per aprire la finestra di dialogo Proprietà articolo - <NomeOggetto>. Le modifiche apportate alle proprietà in questa finestra di dialogo vengono applicate solo all'oggetto evidenziato nel riquadro degli oggetti nella pagina Articoli.

    • Fare clic su Imposta proprietà di tutti gli articoli di <TipoOggetto> per aprire la finestra di dialogo Proprietà di tutti gli articoli <TipoOggetto>. Le modifiche apportate alle proprietà in questa finestra di dialogo vengono applicate a tutti gli oggetti del tipo indicato nel riquadro degli oggetti all'interno della pagina Articoli, inclusi quelli non ancora selezionati per la pubblicazione.

      Nota

      Le modifiche apportate alle proprietà nella finestra di dialogo Proprietà di tutti gli articoli <TipoOggetto> sostituiscono tutte le modifiche eseguite precedentemente nella finestra di dialogo Proprietà articolo - <NomeOggetto>. Se ad esempio si desidera impostare alcuni valori predefiniti per tutti gli articoli di un tipo di oggetto e, al contempo, alcune proprietà per singoli oggetti, è necessario impostare innanzitutto i valori predefiniti per tutti gli articoli, quindi le proprietà relative ai singoli oggetti.

  3. Nelle sezioni Copia oggetti e impostazioni nel Sottoscrittore e Oggetto di destinazione della scheda Proprietà della finestra di dialogo Proprietà articolo - <Articolo> specificare i valori per le opzioni.

  4. Se necessario, modificare le proprietà e quindi fare clic su OK.

  5. Se è visualizzata la finestra di dialogo Proprietà pubblicazione - <Pubblicazione> fare clic su OK per salvare e chiudere la finestra di dialogo.

Utilizzo di Transact-SQL

Le opzioni dello schema vengono specificate come valore esadecimale che corrisponde al risultato | (OR bit per bit) di una o più opzioni. Per ulteriori informazioni, vedere sp_addarticle e sp_addmergearticle.

Nota

È necessario convertire i valori delle opzioni dello schema da binario a int prima di eseguire un'operazione bit per bit. Per altre informazioni, vedere CAST e CONVERT (Transact-SQL).

Per specificare le opzioni dello schema durante la definizione di un articolo per una pubblicazione snapshot o transazionale

  1. Nel database di pubblicazione del server di pubblicazione eseguire sp_addarticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication, il nome dell'articolo per @article, l'oggetto di database da pubblicare per @source_object, il tipo di oggetto di database per @type e il risultato | (OR bit per bit) di una o più opzioni dello schema per @schema_option. Per altre informazioni, vedere definire un articolo.

Per specificare le opzioni dello schema durante la definizione di un articolo per una pubblicazione di tipo merge

  1. Nel database di pubblicazione del server di pubblicazione eseguire sp_addmergearticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication, il nome dell'articolo per @article, l'oggetto di database da pubblicare per @source_object e il risultato | (OR bit per bit) di una o più opzioni dello schema per @schema_option. Per altre informazioni, vedere definire un articolo.

Per modificare le opzioni dello schema per un articolo esistente in una pubblicazione snapshot o transazionale

  1. Nel database di pubblicazione del server di pubblicazione eseguire sp_helparticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication e il nome dell'articolo per @article. Tenere presente il valore della colonna schema_option nel set di risultati.

  2. Eseguire un'operazione & (AND bit per bit) usando il valore del passaggio 1 e il valore dell'opzione dello schema desiderata per determinare se l'opzione è impostata.

    • Se il risultato è 0, l'opzione non è impostata.

    • Se il risultato corrisponde al valore dell'opzione, l'opzione è già impostata.

  3. Se l'opzione non è impostata, eseguire un'operazione | (OR bit per bit) utilizzando il valore del passaggio 1 e il valore dell'opzione dello schema desiderata.

  4. Nel database di pubblicazione del server di pubblicazione eseguire sp_changearticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication, il nome dell'articolo per @article, il valore schema_option per @property e il risultato esadecimale del passaggio 3 per @value.

  5. Eseguire l'agente snapshot per generare un nuovo snapshot. Per altre informazioni, vedere Creazione e applicazione dello snapshot iniziale.

Per modificare le opzioni dello schema per un articolo esistente in una pubblicazione di tipo merge

  1. Nel database di pubblicazione del server di pubblicazione eseguire sp_helpmergearticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication e il nome dell'articolo per @article. Si noti il valore della colonna schema_option nel set di risultati.

  2. Eseguire un'operazione & (AND bit per bit) usando il valore del passaggio 1 e il valore dell'opzione dello schema desiderata per determinare se l'opzione è impostata.

    • Se il risultato è 0, l'opzione non è impostata.

    • Se il risultato corrisponde al valore dell'opzione, l'opzione è già impostata.

  3. Se l'opzione non è impostata, eseguire un'operazione | (OR bit per bit) utilizzando il valore del passaggio 1 e il valore dell'opzione dello schema desiderata.

  4. Nel database di pubblicazione del server di pubblicazione eseguire sp_changemergearticle. Specificare il nome della pubblicazione cui appartiene l'articolo per @publication, il nome dell'articolo per @article, il valore schema_option per @property e il risultato esadecimale del passaggio 3 per @value.

  5. Eseguire l'agente snapshot per generare un nuovo snapshot. Per altre informazioni, vedere Creazione e applicazione dello snapshot iniziale.

Vedi anche

Pubblicare dati e oggetti di database
Article Options for Transactional Replication