J'ai une ligne xml ridiculement longue, il a> 800000 caractères. Le 'client' est aussi le 'serveur'. Le système d'exploitation est Windows 2k8 x64. La base de données a beaucoup de mémoire, tout comme le client. Le problème est qu'une fois que j'ai frappé un nombre magique de caractères - exactement 43679 caractères xml - la ligne renvoie ce qui APPARAIT être ''. je les appelle 'xml chars' car tout espace est évidemment enlevé par sql server quand il calcule la longueur - ce que je fais avec ce sql: len (convert (varchar (max), xsl)) Pourquoi le numéro est 43679 me déroute aussi ...sélection de xml à partir de SQL Server 2005 (ligne apparaît comme nulle)
Quelqu'un at-il ce problème? J'ai en fait attaché au même serveur avec Windows 2k3 et un autre serveur windows 2k8 et aucun problème sur une autre machine que celle-ci (le serveur lui-même).
J'ai également trouvé les résultats de la requête -> SQL Server -> résultats à la grille et définir la limite pour xml à «illimité» mais il semble ne pas encore «travailler» ... (ceux qui travaillent ont ce jeu à 2mb fyi)
Merci pour tous les commentaires - j'essaierai n'importe quoi ... cela n'empêche pas n'importe quoi de fonctionner - je suis sûr que c'est juste ce client mais il me rend fou! :)
MISE À JOUR: FYI - le problème n'est pas la conversion - je ne veux pas vraiment le convertir. la seule raison pour laquelle j'utilise convert dans cet exemple est d'utiliser len (len ne fonctionne pas sur les types de données xml) donc je peux trouver à quel point le xml est long.
Le problème est ...
INSERT INTO someTableForXml(theXml)
VALUES ('<this><is><some><really>long xml</really></some></is></this>')
maintenant copier et coller ce jusqu'à ce que vous avez environ 100 000 lignes de XML et insérez ... Lorsque je sélectionne les lignes arrière à l'aide:
SELECT * FROM someTableForXml
Je récupère 1 ligne et dans la 'grille' j'obtiens un joli petit lien hypertexte pour le xml qui quand je clique dessus, me montre le "full xml" dans un nouvel onglet. Cependant pour MOI ... Une fois que je passe ce chiffre étrangement magique, il arrête de faire ça et semble simplement vide.
J'apprécie votre temps. Merci. Malheureusement, je ne pense pas que ce soit pertinent, donc j'ai mis à jour la question originale avec plus de détails. – dovholuk