我有一個可笑的長xml行,它有> 800000個字符。 '客戶'也是'服務器'。操作系統是Windows 2k8 x64。數據庫和客戶端一樣擁有充足的內存。從sql server 2005中選擇xml(行顯示爲空)
問題是,一旦我碰到一些神奇的字符數 - 正好是43679 xml字符 - 行返回什麼APPEARS是''。我叫他們'xml字符',因爲任何空白顯然是由sql服務器當它計算長度 - 我用這個sql:len(轉換(varchar(max),xsl))剝離出來爲什麼數字是43679也擋我...
有沒有人有這個問題?實際上,我使用Windows 2k3和另一個Windows 2k8服務器連接到同一臺服務器,並且在除此之外的任何其他計算機(實際服務器本身)上都沒有問題。
我也發現查詢結果 - > sql服務器 - >結果到網格,並將xml的限制設置爲'無限',但它似乎仍然不是'工作'...(那些工作有這個設置爲2mb fyi)
感謝您的任何和所有的意見 - 我會嘗試任何事情...它不能阻止任何工作 - 我敢肯定它只是這一個客戶端,但它讓我瘋狂! :)
更新:僅供參考 - 問題是不與轉換 - 我不'實際上要轉換它。我在這個例子中使用convert的唯一原因是使用len(len不能在xml數據類型上工作),所以我可以找到xml是多長時間。
問題是這樣的......
INSERT INTO someTableForXml(theXml)
VALUES ('<this><is><some><really>long xml</really></some></is></this>')
現在,複製和粘貼,直到你有10萬左右的XML的行並將其插入...當我選擇回行使用:
SELECT * FROM someTableForXml
我得到1行,並在'網格'我得到一個很好的xml超級鏈接,當我點擊它時,顯示在一個新標籤中的「完整的xml」。然而,對於我......一旦我傳遞了這個奇怪的數字,它會停止這樣做,只是看起來空白。
我很感謝你的時間。謝謝。可悲的是我不認爲它是相關的,儘管如此我更新了更詳細的原始問題。 – dovholuk 2009-01-08 12:26:56