2017-09-05 2 views
0

j'ai créé un document XML avec Microsoft SQL Server 2014 Management Studio à l'aide des commandes standard comme:Pas bien formé XML créé à l'aide SQL Server Management Studio

FOR XML AUTO 

Il crée un fichier XML correct. Si je clique sur un aperçu, il me montre un document XML bien formé, mais si je le sauvegarde, je ne reçois pas de document bien formé.

Le résultat ressemble à:

Au lieu de en avant-première était quelque chose comme ceci:

enter image description here

Le fichier entier est énorme et je ne peux pas le sauver de la Aperçu.

Répondre

0

Ceci est un problème d'encodage et non une question de bien formé XML. SQL Server ne produira pas de XML non valide. L'aperçu est la preuve. Donc:

  • Comment écrivez-vous le fichier? (Utilisez-vous BCP? Essayez l'option -w)
  • Comment avez-vous ouvert le fichier pour vérifier son contenu? Le fichier peut être correct, mais votre outil ne l'a pas ouvert correctement.
  • Ouvrez le fichier avec un puissant éditeur (comme notepad ++) et vérifiez son encodage. Essayez de changer l'encodage.

Vous devez vous assurer d'écrire ceci comme unicode (utf-16, ucs-2) sur votre disque. Toute variable que vous utilisez pour stocker ce doit être XML ou NVARCHAR(MAX)!