には2つのアプローチがあります。データベースサーバーを完全に制御できるのであれば、デフォルトの文字セット、つまりNLS_CHARACTERSET
パラメータの値を変更し、データベースの残りの部分は変更しないでください。通常のCHAR/VARCHAR2列を使用すると、フルテキスト索引付けなどの幅広い機能セットが提供されます。
サーバーを完全に制御できない場合や、古いマルチバイト対応ではないアプリケーションとの互換性を維持する必要がある場合は、NLS_NCHAR_CHARACTERSET
パラメータの値を確認し、すべてのDBをNCHAR/NVARCHAR2データ型。ここで
は違いを強調して、別の質問です:
SELECT * FROM NLS_DATABASE_PARAMETERS;
SELECT * FROM NLS_INSTANCE_PARAMETERS;
SELECT * FROM NLS_SESSION_PARAMETERS;
注:私は、移行を支援することはできません
Difference between VARCHAR2(10 CHAR) and NVARCHAR2(10)
最終ではなく、少なくとも、ここであなたは、いくつかの有用なクエリですツールまたはSQL Serverの部品、申し訳ありません。
「ANSI」と「Unicode」のどちらも実際の文字エンコードではありません。私はあなたがシングルバイト文字セット(ISO-8859-1やWindows-1252など)からマルチバイト文字セット(UTF-8やUTF-16など)に切り替えることについて話していると仮定します。私はこれについて言及しています。なぜなら、そこには多くの開発者がいて、自分のアプリケーションで使用されている文字セットが分からず、それが基本的な概念だと気づいていないからです。 –
ご返信ありがとうございます。私はシングルバイト文字セットからマルチバイト文字セットに切り替えることについて話します。 – Rhapsody