XML文書がTEXT列(collation_name French_CI_AS、character_set_name iso_1)に格納されています。TEXT列からSQL ServerのXML列に挿入する方法2014
私は、高ASCII文字にその点、私はこれを行うと、私は文字エンコーディングエラーが発生します
INSERT INTO Signature(JustifId, SignedJustif)
SELECT JustifID, CONVERT(XML, Justif.SignedJustif,2)
FROM Justif
...次のSQLを使用してXML列に、新しいテーブルに移動したいですOU = CERES、O = FNMT-RCM、C = ES」 - X509証明書のスペイン語アクセント記号。
これはutf8での生活を始め、.net文字列としてutf16になり、次にTEXT列に挿入するとiso_1になりました。コピーしてウェブページに貼り付けても問題ありません。どのようにすれば、TEXT列から同じDBのXML列に移動するのですか(、これはなぜ難しいのですか?)?
CONVERTのアイデアはthis投稿から来ました。 This MSページでは、varcharとnvarcharからXMLを作成しています。それでも問題が出る場合
テキスト列は使用しないでください。それらは推奨されなくなりました。代わりにvarchar(max)を使用してください。 –
@ZoharPeled確かに、これがこの問題の理由です。 (うまくいけば)OPはこれらの非難された列を取り除きたいと思って、XMLを適切なタイプで保存したいと思っています。 – Shnugo
テキスト列のSQL Server照合とは何ですか? –