0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Oracleのキャラクタセット

Posted at

DB

  • キャラクタ・セットとは?

    Oracleデータベースで利用する文字セットおよびエンコーディング方式を定義したもの
     –データベース側およびクライアント側で設定できる
    主要な文字コードに対応したキャラクタ・セットが用意されている
    Oracleキャラクタ・セット名は、次のネーミング規則で表される
     –[地域][1文字あたりのビット数][標準文字コード名]

  • データベース・キャラクタ・セット

    • CHAR、VARCHAR、VARCHAR2で格納する際に利用される文字コード
    • 指定する文字コードによって1文字辺りのバイト数に変動が生じる
  • 各国語キャラクタ・セット

    • NCHAR、NVARCHARで格納する際に利用される文字コード
    • UTF8又はAL16UTF16しか選択できない
    • AL16UTF16がデフォルト、かつ推奨されているとのこと。
    • 違いはバイト数で格納するか(UTF8)、文字数で格納するか(AL16UTF16)。
    • https://docs.oracle.com/cd/E16338_01/server.112/b56307/ch6unicode.htm
      • 多言語データに使用する列の長さの指定
  • 確認方法

    -- データベース・キャラクタ・セット NLS_CHARACTERSET
    -- 各国語キャラクタ・セット        NLS_NCHAR_CHARACTERSET 
    SELECT PARAMETER, VALUE
      FROM NLS_DATABASE_PARAMETERS
     WHERE PARAMETER IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET');
    

クライアント

  • クライアント・キャラクタ・セット
    • NLS_LANG環境変数を使用して、クライアント・プログラムによって入力または表示されるデータの言語と地域、およびキャラクタ・セットを設定
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?