Comment puis-je convertir un champ XML avec plus de 8000 caractères dans une chaîne de caractères?

J'ai un Serveur SQL de la colonne de type XML contenant quelques records avec plus de 8000 caractères.

Je voudrais le convertir cette colonne dans un varchar.

Je ne suis pas préoccupé par la troncature (les 8000 premiers personnages est très bien).

Cependant, chaque fois que j'essaie CONVERT(varchar(8000), Content) j'obtiens une erreur:

Chaîne de caractères de taille est trop petite pour représenter l'instance XML

Quand j'essaie CONVERT(varchar(MAX), Content) j'obtiens une erreur:

Chaîne ou des données binaires seront tronquées

Quand j'essaie CONVERT(varchar(20000), Content) j'obtiens une erreur:

La taille (20000) compte tenu du type "varchar" dépasse le maximum autorisé pour n'importe quel type de données (8000)

Quand j'essaie CONVERT(text, Content) j'obtiens une erreur:

Conversion explicite de type de données xml de texte n'est pas autorisée

Est-il une solution?

  • Casting pour varchar(max) devrait fonctionner parfaitement. Comme ce n'..
  • C'est peut-être de configuration puis.. j'ai certainement une erreur.
  • Post que comme une réponse et je vais l'accepter. J'ai fait un muet (le contexte particulier j'ai été en utilisant les convertir dans causé un problème qui bouillonnait).
  • Fait, et j'ai essayé de deviner votre "fait problème" aussi bien :).