GeeksforGeeks

PostgreSQLの文字データ型CHAR、VARCHAR、およびTEXTの概念に精通したので、この記事ではそれらの主な違いを強調することに焦点を当てます。CHARデータ型とは何ですか?
このデータ型は、制限された長さの文字を格納するために使用されます。 PostgreSQLでは、char(n)character(n) として表されます。nは文字の長さの制限を表します。Nが指定されていない場合、デフォルトはchar(1) character(1)になります。VARCHARデータ型とは何ですか?
このデータ型は、制限された長さの文字を格納するために使用されます。 PostgreSQLではvarchar(n)として表されます。nは文字の長さの制限を表します。 Nが指定されていない場合、デフォルトではvarchar になり、長さは無制限です。テキストデータ型とは何ですか?
このデータ型は、長さに制限のない文字を格納するために使用されます。 PostgreSQLではtextとして表されます。 Varchar(nなし)とtextのパフォーマンスは同じです。 次の表は、CHAR、VARCHAR、TEXTの主な違いを示しています:

Comparison CHAR VARCHAR TEXT
Syntax CHAR(n) VARCHAR(n) TEXT
Representation char(n) or character(n) varchar(n) text
Length of characters Limited Limited Unlimited
Spaces and padding Gets truncated トランケートされます renains inact
Nが指定されていない場合 n=1 n=infinity Nの概念が存在しません
クエリサイクル 長さをチェックする余分なサイクル 長さをチェックする余分なサイクル 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません 文字長の評価がありません例:以下のコマンドを使用して、デモ用の新しいテーブル(たとえば、character_tests)を作成しましょう:次のコマンドを使用して、char_testテーブルに新しい行を挿入しましょう。

INSERT INTO character_tests (x, y, z)VALUES ( 'Geeks', 'This is a test for varchar', 'This is a very long text for the PostgreSQL text column' );

この段階で、X列のデータ型がchar(1)であるため、PostgreSQLはエラーを発生させ、以下に示すように、この列に3文字の文字列を挿入しようとしました。

ERROR: value too long for type character(1)

それでは、それを修正しましょう。以下に示すように、入力された文字数が10より大きいため、y列でも同じエラーが発生します。

ERROR: value too long for type character(10)

も修正しましょう。文字データ型に値を正常に割り当てることができたので、以下のコマンドを実行して確認します。

SELECT * FROM character_tests;

出力:

Article Tags :

コメントを残す

メールアドレスが公開されることはありません。