[解決済み] textとvarcharの違い(character varying)
2022-03-20 06:44:08
質問
の違いは何ですか?
text
データ型と
character varying
(
varchar
) のデータ型は?
によると ドキュメント
<ブロッククオート長さ指定子なしでcharacter varyingを使用した場合、任意の大きさの文字列を受け付ける。後者はPostgreSQLの拡張です。
と
さらに、PostgreSQLは任意の長さの文字列を格納するtext型を提供します。text型は標準SQLにはありませんが、他のいくつかのSQLデータベース管理システムも同様にtext型を持っています。
では、何が違うのでしょうか?
どのように解決するのか?
違いはありません。
varlena
(
可変長配列
).
デペスのこの記事をチェック http://www.depesz.com/index.php/2010/03/02/charx-vs-varcharx-vs-varchar-vs-text/
ハイライトをいくつか紹介します。
総括すると
- char(n) - より短い値を扱う場合、スペースがかかりすぎる。
n
(にパッドする)。n
を追加するため、微妙な誤差が生じる可能性があります。 を変更するのは問題があります。- varchar(n) - ライブ環境で制限を変更するのは問題がある(テーブルを変更する際に排他ロックが必要)。
- varchar - テキストと同じです。
- text - 私にとっては勝者 - (n)データ型には問題がなく、varcharには明確な名前があるためです。
この記事では、4つのデータ型すべてについて、挿入と選択のパフォーマンスが同程度であることを示すために詳細なテストを行っています。また、必要なときに長さを制約する別の方法についても詳しく見ています。関数ベースの制約やドメインは、長さの制約を即座に増加させるという利点を備えており、文字列の長さの制約を減少させることはまれであることに基づいて、depeszは、長さの制限には通常これらのいずれかが最良の選択であると結論付けています。
関連
-
sql 日付形式変換関数_SQL 日付変換
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] varcharとnvarcharの違いは何ですか?
-
[解決済み] テキストファイルを文字列変数に読み込んで、改行を除去するには?
-
[解決済み] Pythonの旧スタイルのクラスと新スタイルのクラスの違いは何ですか?
-
[解決済み] MySQLです。大きなVARCHARとTEXTの比較?
-
[解決済み] PHPの文字列で、シングルクオートとダブルクオートの違いは何ですか?
-
[解決済み] SQL Serverにおけるchar、nchar、varchar、nvarcharの違いは何ですか?
-
[解決済み】type()とisinstance()の違いは何ですか?)
-
[解決済み] sed/grepを使って、2つの単語の間のテキストを抽出するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
sql 日付形式変換関数_SQL 日付変換
-
[解決済み] YAML の文字列を複数行に渡って分割するには?
-
[解決済み] Rust の `String` と `str` の違いは何ですか?
-
[解決済み] swiftにStringのtrimメソッドはありますか?
-
[解決済み] Goで文字列を整数型に変換する?
-
[解決済み] Postgresql - varcharカラムのサイズを小さく変更する
-
[解決済み] 変数名が文字列で保存されている場合、変数値を取得する方法は?
-
[解決済み] sed/grepを使って、2つの単語の間のテキストを抽出するには?
-
[解決済み] dartの文字列の最初の文字を大文字にするには?
-
[解決済み] 文字列から使える番地、市区町村、郵便番号の解析【非公開