Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में XML को टेक्स्ट कास्ट करने में असमर्थ

आपकी समस्या यह है:आपके पास encoding="utf-16" . के साथ XML है , लेकिन आपका कॉलम एक गैर-यूनिकोड कॉलम है......

यह मानते हुए कि आप इसे NTEXT . में नहीं बदल सकते या तो, आपको दो नेस्टेड CAST करना होगा आप जो खोज रहे हैं उसे हासिल करने के लिए:

SELECT 
    CAST(CAST(XML AS NTEXT) AS XML).value('(/Record/UserGuid)[1]', 'NVARCHAR(max)')
FROM 
    tbl_Module_RequestForms_Items

सबसे पहले, आपको NTEXT . पर डालना होगा (या NVARCHAR(MAX) ), और फिर आपको उस परिणाम को XML . पर डालना होगा , इससे पहले कि आप इसका उपयोग कर सकें।

युक्ति: उन "अन्य कारणों" को हटा दें और इसे XML . में बदलें डेटाटाइप यदि आपको वास्तव में इसे XML के रूप में उपयोग करने की आवश्यकता है .....



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर फ़ाइलस्ट्रीम फ़ाइलस्ट्रीम कॉलम को कैसे पॉप्युलेट करें

  2. Azure डेटा स्टूडियो (SQL सर्वर) में क्वेरी निष्पादन योजना कैसे देखें

  3. क्रिस्टल रिपोर्ट में लिंक को नई विंडो में खोलें

  4. UnixODBC, FreeTDS, और PyODBC में समस्याएं आ रही हैं

  5. दशमलव समय को घंटे और मिनट में बदलें