Closed1

【Postgresql】 varying

seiya2130seiya2130

文字列の長さを固定せず「最大◯文字まで格納できる」可変長の文字列型を表すキーワード

  • 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ヶ月前にクローズされました