A5:SQL Mk-2

開発のこと、日々のこと

Oracleのキャラクタ・セマンティクス時の4byte utf8

ホーム フォーラム A5:SQL Mk-2掲示板 Oracleのキャラクタ・セマンティクス時の4byte utf8

  • このトピックは空です。
1件の投稿を表示中 - 1 - 1件目 (全1件中)
  • 投稿者
    投稿
  • #22907 返信
    hiro
    ゲスト

    Oracleのキャラクタ・セマンティクス時の4byte utf8の入力・表示が半分のサイズで扱われるようです。

    CREATE TABLE test1(
    hoge1 varchar2(10 CHAR)
    hoge2 varchar2(40)
    );

    INSERT INTO test1(hoge1,hoge2)values(‘𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋’,’𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋’);
    INSERT INTO test1(hoge1,hoge2)values(‘1234567890’,’1234567890’);

    とした場合、
    A5M2上でselectやテーブルのデータを表示した場合

    𠀋𠀋𠀋𠀋𠀋 𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋𠀋
    1234567890 1234567890

    と4バイトutf8の表示が半分の長さで表示されます。
    (データ自体はsqlplus等の結果10文字ちゃんと入ってる状態でした)

    また、テーブルのデータのタブから入力(Insert・update)しようとすると
    𠀋が2文字扱いになっているようで5個以上入力できないようです。

    ・DB
    NLS_CHARACTERSET AL32UTF8
    NLS_NCHAR_CHARACTERSET AL16UTF16
    ・A5M2
    NLS_LANG JAPANESE_JAPAN.JA16SJIS

    です。

1件の投稿を表示中 - 1 - 1件目 (全1件中)
返信先: Oracleのキャラクタ・セマンティクス時の4byte utf8
あなたの情報:




コメントは受け付けていません。