Closed1
【Postgresql】 varying

文字列の長さを固定せず「最大◯文字まで格納できる」可変長の文字列型を表すキーワード
-
CHARACTER VARYING(n)
- 最大
n
文字までの文字列を格納できる可変長型。 -
VARCHAR(n)
のエイリアス(別名)です。 - 実際には、指定された長さを超えない限り、データの長さに応じて必要な分だけ領域を使います。
- 最大
-
CHARACTER VARYING
(長さ指定なし)- 長さ制限なしの可変長文字列型で、事実上
TEXT
と同じ動作をします。 -
VARCHAR
と書いて長さを省略した場合も同様に、制限なしの文字列型になります。
- 長さ制限なしの可変長文字列型で、事実上
-
固定長型との違い
-
CHAR(n)
(またはCHARACTER(n)
)は、常にn
文字分の領域を使い、足りない分は空白でパディングされます。 - 一方
CHARACTER VARYING(n)
は実際の文字数に応じた領域しか使わず、空白の自動パディングも行いません。
-
例
CREATE TABLE users (
username VARCHAR(50), -- 最大50文字の可変長
comment CHARACTER VARYING -- 長さ制限なし(TEXT 相当)
);
-
username
カラムは最大50文字まで。 -
comment
カラムは制限なし(任意の長さの文字列)を受け取れます。
まとめると、VARYING
は「可変長」を意味し、CHARACTER VARYING
(=VARCHAR
)で文字列を必要な分だけ柔軟に扱えるデータ型になります。
このスクラップは4ヶ月前にクローズされました