Procédure : spécifier des options de schéma (programmation Transact-SQL de la réplication)
Lors de la publication d'une table ou d'une vue, la réplication vous permet de contrôler les options de création d'objet qui sont répliquées pour l'objet publié. Les options de schéma peuvent être définies par programme lorsqu'un article est créé à l'aide des procédures stockées de réplication. Elles peuvent également être modifiées ultérieurement. Si vous ne spécifiez pas explicitement ces options pour un article, un jeu d'options par défaut sera défini.
Notes
Les options de schéma par défaut lors de l'utilisation de procédures stockées de réplication peuvent différer des options par défaut lorsque des articles sont ajoutés à l'aide de Microsoft SQL Server Management Studio.
Les options de schéma sont spécifiées sous la forme d'une valeur hexadécimale qui correspond au résultat | (opération de bits OR) d'une ou de plusieurs options. Pour plus d'informations, consultez sp_addarticle et sp_addmergearticle.
Notes
Vous devez convertir les valeurs des options de schéma du format binaire au format int avant d'effectuer une opération au niveau du bit. Pour plus d'informations, consultez Article Options for Transactional Replication.
Pour spécifier des options de schéma lors de la définition d'un article pour une publication transactionnelle ou d'instantané
- Exécutez sp_addarticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication, le nom de l'article pour @article, l'objet de base de données qui est publié pour @source_object, le type d'objet de base de données pour @type et le résultat | (opération de bits OR) d'une ou de plusieurs options de schéma pour @schema_option. Pour plus d'informations, consultez Procédure : définir un article (programmation Transact-SQL de la réplication).
Pour spécifier des options de schéma lors de la définition d'un article pour une publication de fusion
- Exécutez sp_addmergearticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication, le nom de l'article pour @article, l'objet de base de données qui est publié pour @source_object et le résultat | (opération de bits OR) d'une ou de plusieurs options de schéma pour @schema_option. Pour plus d'informations, consultez Procédure : définir un article (programmation Transact-SQL de la réplication).
Pour modifier des options de schéma pour un article existant dans une publication transactionnelle ou d'instantané
Exécutez sp_helparticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication et le nom de l'article pour @article. Notez la valeur de la colonne schema_option dans le jeu de résultats.
Exécutez une opération & (opération de bits AND) en utilisant la valeur de l'étape 1 et la valeur de l'option de schéma de votre choix pour déterminer si cette option est définie.
Si le résultat est 0, l'option n'est pas définie.
Si le résultat correspond à la valeur de l'option, l'option est déjà définie.
Si l'option n'est pas définie, exécutez une opération | (opération de bits OR) en utilisant la valeur de l'étape 1 et la valeur de l'option de schéma de votre choix.
Exécutez sp_changearticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication, le nom de l'article pour @article, la valeur schema_option pour @property et le résultat hexadécimal obtenu à l'étape 3 pour @value.
Exécutez l'Agent d'instantané afin de générer un nouvel instantané. Pour plus d'informations, consultez Procédure : créer la capture instantanée initiale (programmation Transact-SQL de la réplication).
Pour modifier des options de schéma pour un article existant dans une publication de fusion
Exécutez sp_helpmergearticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication et le nom de l'article pour @article. Notez la valeur de la colonne schema_option dans le jeu de résultats.
Exécutez une opération & (opération de bits AND) en utilisant la valeur de l'étape 1 et la valeur de l'option de schéma de votre choix pour déterminer si cette option est définie.
Si le résultat est 0, l'option n'est pas définie.
Si le résultat correspond à la valeur de l'option, l'option est déjà définie.
Si l'option n'est pas définie, exécutez une opération | (opération de bits OR) en utilisant la valeur de l'étape 1 et la valeur de l'option de schéma de votre choix.
Exécutez sp_changemergearticle dans la base de données de publication du serveur de publication. Spécifiez le nom de la publication à laquelle l'article appartient pour @publication, le nom de l'article pour @article, la valeur schema_option pour @property et le résultat hexadécimal obtenu à l'étape 3 pour @value.
Exécutez l'Agent d'instantané afin de générer un nouvel instantané. Pour plus d'informations, consultez Procédure : créer la capture instantanée initiale (programmation Transact-SQL de la réplication).