sql >> Databáze >  >> RDS >> Sqlserver

Nelze přenést TEXT do XML na SQL Server

Váš problém je:máte XML s encoding="utf-16" , ale váš sloupec není sloupec Unicode......

Za předpokladu, že to nemůžete změnit na NTEXT buď musíte provést dva vnořené CAST abyste dosáhli toho, co hledáte:

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

Nejprve musíte přenést do NTEXT (nebo NVARCHAR(MAX) ) a poté musíte tento výsledek přenést do XML , než jej budete moci použít.

Tip: odstraňte tyto "jiné důvody" a převeďte to na XML datový typ, pokud jej opravdu potřebujete použít jako XML ......



  1. Jak používáte zdrojový příkaz MySQL k importu velkých souborů v systému Windows

  2. Max tabulky a designový vzor

  3. jak zabránit databázi přidat lomítko do uvozovek

  4. Vyberte hodnotu prvku xml v Oracle