概要:このチュートリアルでは、Oracle VARCHAR2
データ型について学び、それを使用して可変長文字列カラムを定義する方法を学びます。
Introduction to Oracle VARCHAR2 data type
可変長文字列を保存するには Oracle VARCHAR2
データ型が使われます。 VARCHAR2
カラムは 1 バイトから 4000 バイトまでの値を格納することができます。
VARCHAR2
カラムを持つテーブルを作成する場合、最大文字列長をバイト数で指定する必要があります。 言い換えれば、VARCHAR2(N)
カラムは最大 N
バイトの文字を保持することができる。
もし VARCHAR2
カラムの最大サイズを超える文字列を格納すると、Oracle はエラーを発生させる。 シングルバイト文字セットでは、最大20文字まで保存できます。 21文字以上格納すると、Oracleはエラーを返す。
さらに、VARCHAR2(20)
カラムに10文字を格納すると、Oracleは20バイトではなく、10バイトだけを格納に使用する。
VARCHAR2
データ型を使用すると、テーブルで使用するスペースを節約できます。
Oracle VARCHAR2 max length
Oracle Database 12c から、VARCHAR2
データ型に最大サイズ 32767 を指定することができます。 Oracle は最大サイズを制御するために MAX_STRING_SIZE
パラメータを使用します。 MAX_STRING_SIZE
が STANDARD
である場合、VARCHAR2
の最大サイズは 4000 バイトです。 MAX_STRING_SIZE
が EXTENDED
の場合、VARCHAR2
のサイズ制限は 32767 です。
MAX_STRING_SIZE
パラメーターの値を取得するには、次のクエリーを使用します:
または次の文を使用します:
Oracle VARCHAR2 examples
次の文は、社員の緊急連絡を保存する econtacts
という新しい表を作成します:
econtacts
テーブルには VARCHAR2
列が 3 つあります。 first_name
, last_name
, phone
.
次のステートメントは、econtacts
テーブルに新しい行を挿入します:
入力データがVARCHAR2
列の最大サイズを超えていないため、期待どおりに動作しました。
しかし、次のステートメントは挿入に失敗します:
入力されたファーストネームがfirst_name
列の最大長を超えているため、Oracleは次のエラーを発行しました:
このチュートリアルでは、Oracle VARCHAR2
と VARCHAR2
データ型を使用してテーブル内の可変長文字列列を定義する方法について学習してきました。
- このチュートリアルは役に立ちましたか?
- YesNo