2012-04-19 14 views
0

私はSQL Serverにデータベースを持っています。データベースからロシア語の文字を読み取る方法は?

私は今、私は文字列にそれを保存したい私のDelphiのアプリにロシアのテキストを読みたいタイプNvarchar

の列にロシアのテキストを挿入し、テーブルDemoを持っています。

ADOクエリなどの任意のCharsetプロパティを設定する必要がありますか?

他のアイデアを歓迎します。この1への答えがなかったので、事前

+0

ここにいくつかのトラック、多分:http://stackoverflow.com/questions/4819406/how-to-use-delphi-xes-tencoding-to-save-cyrillic-or-shiftjis -text-to-a-file –

+0

@DavidBrabant:デルファイ7ではなく、デルファイXEのためのものです。 – CyprUS

+0

@CyprUS - はい、その質問のコメントには解決策を導くべきWideCharToMultiByteがあります。 –

答えて

0

おかげで、私はそれを自分でお答えします。使い方SetThreadLocale(<language id>)スレッドの言語IDを1033(英語)に設定できました。 DBが1033 idに設定されているので、表示されたテキストが正しく表示されるようになりました。私はそれが他人を助けることを望む。

ユニコード文字をデータベースに正しく入力するには、Unicode文字列を入力する列に接頭辞Nを使用します。詳細については、見てくださいhere

+0

あなたのDBにはロシア語以外の言語はありませんか? 'NVarchar'はUnicodeです。 DBとの間で 'WideString'を読み書きする必要があります。 D7での作業は難しいですね。 Unicodeでの操作が完全に可能な場合はADO、DB認識コントロールの場合はTntコントロールなどを使用できます。 – kobik

+0

私の悪い、私はそれを追加することを忘れました。私は今答えを編集します。 – CyprUS

関連する問題