oracleでは、基本varchar = varchar2
ただ、varchar2の場合、桁数=Size
と先輩が行ってくれた 最初に?え。。そうなの。。?ずっと理解できなかったけど。
あ、桁数=size -> NVARCHAR2
あ。。。とにかく調査してみたので整理しましょう
nvarchar2 ★★日本語も巻き込まれたら★★これ使いましょう
- 桁数=Size
- varchar2 の全角の場合3バイトだっけ?それをもうする必要がない!
- 4000Bytes 可変長Unicode文字列 Variable-length Unicode character
- size 指定が必要
- 最大のsizeは、各国語文字セット定義によって決定されます。
varchar2
- 4000Bytes の最大長さを持つ文字の可変長の文字列
- 4000Byteまで保存できる
- nullの場合は任意のスペースを占有しない
varchar
- 可変長の文字列
- 最初の2つのバイト=文字列の長さ
- 残りバイト=文字列
- 2000Byteまで保存できる
- nullの場合、スペースを占有
refer
ORACLE JP 19c
https://docs.oracle.com/cd/F19136_01/sqlrf/Data-Types.html#GUID-7B72E154-677A-4342-A1EA-C74C1EA928E6
ORACLE EN 19c
https://ora14.informatik.haw-hamburg.de/sqlrf/Data-Types.html#GUID-A3C0D836-BADB-44E5-A5D4-265BA5968483