J'ai une table SQL avec une colonne XML nommé CasingRules, qui contiendrait des données telles que:Utilisation de XPath/XQuery pour créer des nœuds enfants dans une colonne SQL
<root>
<Item>
<RegularExpression>^Mc[A-Z,a-z]*</RegularExpression>
<Format>ULU</Format>
</Item>
<Item>
<RegularExpression>^Mac[A-Z,a-z]*</RegularExpression>
<Format>ULLU</Format>
</Item>
</root>
J'essaie d'utiliser MS SQL Modifions méthode pour ajouter un nouveau noeud « ApplyTo » dans chaque élément, pour créer quelque chose comme:
<root>
<Item>
<RegularExpression>^Mc[A-Z,a-z]*</RegularExpression>
<Format>ULU</Format>
<ApplyTo>NameAndAddress</ApplyTo>
</Item>
<Item>
<RegularExpression>^Mac[A-Z,a-z]*</RegularExpression>
<Format>ULLU</Format>
<ApplyTo>NameAndAddress</ApplyTo>
</Item>
</root>
.. mais je suis très bien un débutant à XPath, et même pas sûr s'il est possible de mettre à jour plusieurs noeuds une requête? Y a-t-il un moyen élégant d'y parvenir?
J'attends la syntaxe est quelque chose comme ça, mais ce ne fonctionne pas:
UPDATE TableName
SET CasingRules.modify('insert <ApplyTo>NameAndAddress</ApplyTo> as last into (/root//Item[1])')
semble bon, mais je me bats pour former cette XQuery dans une déclaration de mise à jour que je peux utiliser avec MSSQL-2005. Je commence à penser que le support de XQuery dans MSSQL n'est peut-être pas à la hauteur. – PaulG
@PaulG: Je suis désolé d'entendre ça ... J'ai répondu juste parce que j'ai vu la balise 'xquery'. –