[oracle]:NLS_LENGTH_SEMANTICSの設定を「BYTE」から「CHAR」に変更する

DBの再構築の必要はありません。
CHAR単位への変更は、ALTER SESSION文等で変更可能です。
なお、CREATE TABLE文でBYTE単位にしたい場合は、明示的に
指定する必要があります。

SQL> ALTER SESSION SET NLS_LENGTH_SEMANTICS=’CHAR’;

セッションが変更されました。

SQL> CREATE TABLE HOGE_TABLE(
2 NAME1 VARCHAR2(10),
3 NAME2 VARCHAR2(10 BYTE)
4 );

表が作成されました。

また、列のセマンティクスが、バイトか、キャラクタかは
ALL_TAB_COLUMNS等のCHAR_USED列で確認できます。

◆CHAR_USEDについて
列がバイトの長さセマンティクス(B)を使用するか、文字の長さセマンティクス(C)を使用するか、またはデータ型が次のいずれでもない(NULL)ことを示す
・CHAR
・VARCHAR2
・NCHAR
・NVARCHAR2

スポンサーリンク
google 6948682462
google 6948682462

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
google 6948682462