Bonjour,
Dans mes travaux de développement j'ai besoin d'un champ XML. Dans mes premiers travaux je n'ai pas fait de déclaration d'encodage particulière à part dans la valeur par défaut de mon champ:
'<?xml version="1.0" encoding="utf-8"?><Catalogue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><Entree></Entree></Catalogue>'
Pour attaquer cette base de données je passe par Entity Framework qui m'a levé des erreurs en m'indiquant que cet encodage n'était pas supporté. Je suis donc passé à de l'encodage utf-16 dans les chaînes que j'utilisais pour mes requêtes.
Jusque là tout fonctionnais bien sauf quand j'ai voulus changer la valeur par défaut du champ, pour que l'en-tête corresponde aux données, en:
'<?xml version="1.0" encoding="utf-16"?><Catalogue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><Entree></Entree></Catalogue>'
L'erreur suivante est levée:
Analyse XML*: ligne 1, caractère 39, impossible de modifier le codage
Mes recherches n'ont rien apporté et la seule solution que j'ai trouvée actuellement et de supprimer toutes les tables qui ont on eu un champ XML car la simple suppression du champ XML n'a pas l'air de suffire.
Aussi, voici ma question: Savez vous comment je pourrais changer cette valeur par défaut sans supprimer mes tables (besoin de conserver les autres données).
Partager