SQLクエリからのデータを使用してJSON Webサービスにデータを提供しようとしています。私が持っている問題は、SQL ServerデータベースにUTF16として格納されているデータで、UTF8としてWebサービスに提供する必要があるということです。UTF16ではなくUTF8へのSQL Server出力クエリ
SQLクエリが実行されるときに、自分のSQLクエリを使用してデータを変換したいと考えています。私は様々なフォーラムを読んでいて、特に簡単な変換方法はないという印象を受けました。
たとえば、ÖSTLUNDなどの名前があります。有効なUnicode/Windowsコードページ1253は、わかっている限りです。
UFT8がWindowsコードページ1252のようになっていると思いますか?
キャストとコレートのさまざまなバージョンを試してみましたが、どちらの方法で最善の答えが得られるか分かりません。
(cast(SURNAME as varchar(100)) COLLATE SQL_Latin1_General_Pref_CP1_CI_AS)
または
(cast(SURNANE as varchar(100)) COLLATE Latin1_General_100_CI_AS_KS_WS_SC)
誰もがこれを行うための最善の方法を任意の提案を持っていますか?これを行うにはキャストとコレートがありますか?
UPDATE:
アプリケーションがのUnifaceで書かれている古いものです。アプリケーション・サーバーは、データベース・フィールドの変更に応答してSQLスクリプトを実行しています。次に、WebサービスポストのペイロードにSQL出力を取り込みます。 SQLの出力は、WebサービスのJSONに準拠しています。
「sql-server」はUTF8をサポートしていない可能性があります。たぶんCLRで... – HoneyBadger
私は可能な限り、あなたのWebサービス層に必要なカバーをしたいと思います。 UTF-8はコードページではありません1252 –
ありがとうございました。アランは、DBにリンクされているWebサービスがかなりばかげているので、何らかの処理を行うのではなくメッセージを外部に投稿しています。 – jonah