Suppression de données à l'aide de codes de mise à jour (updategrams) XML (SQLXML 4.0)
S’applique à :SQL ServerAzure SQL Database
Un programme de mise à jour indique une opération de suppression lorsqu’un instance d’enregistrement apparaît dans le <bloc avant> sans enregistrement correspondant dans le <bloc après>. Dans ce cas, le programme de mise à jour supprime l’enregistrement dans le <bloc avant> de la base de données.
Voici le format du code de mise à jour pour une opération de suppression :
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:sync [mapping-schema="SampleSchema.xml"] >
<updg:before>
<ElementName />
[<ElementName .../>... ]
</updg:before>
[<updg:after>
</updg:after>]
</updg:sync>
</ROOT>
Vous pouvez omettre la <balise after> si le programme de mise à jour n’effectue qu’une opération de suppression. Si vous ne spécifiez pas l’attribut de schéma de mappage facultatif, l’elementName<> spécifié dans le programme de mise à jour est mappé à une table de base de données et les éléments ou attributs enfants sont mappés aux colonnes de la table.
Si un élément spécifié dans le programme de mise à jour correspond à plusieurs lignes de la table ou ne correspond à aucune ligne, le code de mise à jour retourne une erreur et annule l’intégralité <du bloc de synchronisation> . Un seul enregistrement peut être supprimé à la fois par un élément dans le code de mise à jour.
Exemples
Les exemples dans cette section utilisent le mappage par défaut (en d'autres termes, aucun schéma de mappage n'est spécifié dans le code de mise à jour). Pour plus d’exemples de mises à jour qui utilisent des schémas de mappage, consultez Spécification d’un schéma de mappage annoté dans un updategram (SQLXML 4.0) .
Pour créer des exemples de travail à l’aide des exemples suivants, vous devez répondre aux exigences spécifiées dans Configuration requise pour l’exécution d’exemples SQLXML.
R. Suppression d'un enregistrement à l'aide d'un code de mise à jour
Les codes de mise à jour suivants suppriment deux enregistrements de la table HumanResources.Shift.
Dans ces exemples, le code de mise à jour ne spécifie pas de schéma de mappage. Par conséquent, le code de mise à jour utilise le mappage par défaut, dans lequel le nom d'élément est mappé à un nom de table et les attributs ou sous-éléments sont mappés aux colonnes.
Ce premier programme de mise à jour est centré sur les attributs et identifie deux décalages (Jour-Soir et Soir-Nuit) dans le <bloc avant> . Étant donné qu’il n’existe aucun enregistrement correspondant dans le <bloc après> , il s’agit d’une opération de suppression.
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:sync >
<updg:before>
<HumanResources.Shift ShiftID="4"
Name="Day-Evening"
StartTime="1900-01-01 11:00:00.000"
EndTime="1900-01-01 19:00:00.000"
ModifiedDate="2004-01-01 00:00:00.000" />
<HumanResources.Shift ShiftID="5"
Name="Evening-Night"
StartTime="1900-01-01 19:00:00.000"
EndTime="1900-01-01 03:00:00.000"
ModifiedDate="2004-01-01 00:00:00.000" />
</updg:before>
<updg:after>
</updg:after>
</updg:sync>
</ROOT>
Pour tester le code de mise à jour
Complétez l’exemple B (« Insertion de plusieurs enregistrements à l’aide d’un updategramme ») dans Insertion de données à l’aide de mises à jour XML (SQLXML 4.0) .
Copiez le code de mise à jour ci-dessus dans le Bloc-notes et enregistrez-le en tant que Updategram-RemoveShifts.xml dans le même dossier que celui utilisé pour terminer (« Insertion de plusieurs enregistrements à l’aide d’un updategramme ») dans Insertion de données à l’aide de mises à jour XML (SQLXML 4.0).
Créez et utilisez le script de test SQLXML 4.0 (Sqlxml4test.vbs) pour exécuter le code de mise à jour (updategram).
Pour plus d’informations, consultez Utilisation d’ADO pour exécuter des requêtes SQLXML 4.0.
Voir aussi
Considérations de sécurité relatives au code de mise à jour (updategram) (SQLXML 4.0)
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour