ホームページ  >  記事  >  データベース  >  最も完全な分析: MySQL フィールド タイプ

最も完全な分析: MySQL フィールド タイプ

WBOY
WBOY転載
2021-12-24 18:26:152694ブラウズ

この記事では、mysql のフィールド タイプに関する関連知識を提供し、概要を説明します。皆様のお役に立てれば幸いです。

最も完全な分析: MySQL フィールド タイプ

前書き:

データベースを理解するには、データベースがサポートするデータ型を理解する必要があります。 MySQL は多数のフィールド タイプをサポートしており、その多くは一般的に使用されています。以前の記事でも int 型と varchar 型の使用法について説明しましたが、フィールド型については十分に説明したことがありませんでした。この記事では、すべてのフィールド型をカバーし、一般的なフィールド型の使用法について説明します。

一般的に使用されるフィールド タイプは、数値型文字列型日時型の 3 つのカテゴリに大別できます。順番に紹介していきます。

1. 数値型

数値型の主なカテゴリは、整数型浮動小数点型固定小数点に分類できます。 type3 つの小さなカテゴリ。

整数は、主に整数値を格納するために使用されます。主に次のフィールド タイプがあります:

最も完全な分析: MySQL フィールド タイプ

整数は、tinyint、int、bigint など、よく使用されます。 。デフォルトは signed ですが、符号なしの値のみを保存する必要がある場合は、unsigned 属性を追加できます。

int(M) の M は最大表示幅を表します。int(1) が値 10 を格納できないという意味ではありません。表示幅が何文字に設定されていても、int は 4 文字を占めます。 .セクション、つまり int(5) と int(10) の格納範囲は同じです。

ストレージバイトが小さいほど、占有されるスペースも小さくなります。したがって、ストレージを最小限に抑えるという原則に従って、適切な整数型を選択するように努める必要があります。たとえば、tinyint はステータス値や人々の年齢を保存するために使用できます。主キー列には負の数値はありません。フィールド数を見積もるには、int unsigned または bigint unsigned を使用することをお勧めします。bigint 型を使用すると、値は 42 億を超えます。

浮動小数点型には主に float と double があります。浮動小数点型は、float(6,3) のように、近似値をデータベースに保存します。123.45678 という数値を挿入すると、実際の値がデータベースに保存されますは 123.457 となりますが、合計は 6 桁、最大整数部は 3 桁と実際の条件により異なります。 float と double は一般的には使用されません。

最も完全な分析: MySQL フィールド タイプ

#固定小数点フィールド タイプとして DECIMAL が 1 つあります。これは主に、精度要件のある小数を格納するために使用されます。

最も完全な分析: MySQL フィールド タイプ

DECIMAL は MySQL 5.1 から導入され、カラム宣言の構文は DECIMAL(M,D) です。 NUMERIC は DECIMAL と同義です。フィールド タイプが NUMERIC として定義されている場合、自動的に DECIMAL に変換されます。

宣言構文 DECIMAL(M,D) の場合、引数の値の範囲は次のとおりです。

  • M は最大桁数 (精度) であり、範囲は次のとおりです。は 1 ~ 65 です。指定できません。デフォルト値は 10 です。
  • D は、小数点の右側の桁数 (小数点以下の桁数) です。範囲は 0 ~ 30 で、M より大きくすることはできません。指定する必要はありません。デフォルト値は 0 です。

たとえば、フィールド給与 DECIMAL(5,2) は、5 桁の小数点以下 2 桁の任意の値を格納できるため、給与列に格納できる値の範囲は次のとおりです。 -999.99 ~ 999.99 。

2. 文字列型

文字列型もよく使用されます。一般的に使用される型は次のとおりです。 varchar が最も一般的に使用されます。 char 型は固定長であり、MySQL は常に定義された文字列長に従って十分なスペースを割り当てます。 char 値が保存されるときは、指定された長さまで右側にスペースが埋め込まれ、char 値が取得されるときは、末尾のスペースが削除されます。 varchar 型は可変長文字列の格納に使用され、格納時に定義された桁数に達しない場合、末尾にスペースは追加されません。

char(M) および varchar(M) の M は保存される最大文字数を表し、単一の文字、数字、中国語などはすべて 1 文字を占めます。 char は、非常に短い文字列を格納する場合、またはすべての値が同じ長さに近い場合に適しています。たとえば、char は固定長値であるため、パスワードの MD5 値を格納するのに最適です。文字列が非常に長い場合、または格納される文字列の長さが異なる場合には、varchar の方が適しています。 最も完全な分析: MySQL フィールド タイプ

フィールドの最大長を定義する場合は、必要に応じて割り当て、事前に見積もりを立て、varchar 型が使用できる場合は text 型を使用しないようにする必要があります。長いテキスト データを保存する必要がない限り、テキスト タイプの使用を検討してください。

BLOB タイプは主に、画像、オーディオ、ビデオ ファイルなどのバイナリの大きなオブジェクトを格納するために使用されます。日常生活ではほとんど使用されませんが、バイナリ文字列を保存するときに使用することを検討できます。

3. 日付と時刻のタイプ

MySQL でサポートされている日付と時刻のタイプは、

YEAR

TIME

DATE です。 、DATETIMETIMESTAMP、いくつかの型は次のように比較されます:

日付と時刻のフィールド タイプの選択に関しては、ストレージ要件に応じて適切なタイプを選択するだけです。

DATETIME 型と TIMESTAMP 型のどちらを選択するかは、ストレージ要件に基づいて行うことができます。たとえば、より広いストレージ範囲が必要な場合は、DATETIME を使用することをお勧めします。現在のタイムスタンプのみを保存する場合は、次のように使用できます。 TIMESTAMP タイプ。ただし、TIMESTAMP フィールドのデータはシステム タイム ゾーンに応じて変更されますが、DATETIME フィールドのデータは変更されないことに注意してください。一般に、DATETIME の方が広く使用されています。

概要:

この記事では、MySQL でよく使われるフィールド タイプを主に紹介します。よく使われるフィールド タイプは基本的にここにあり、考え方ガイドも付いています。図は次のようにまとめられています。以下:

最も完全な分析: MySQL フィールド タイプ

推奨学習: mysql ビデオ チュートリアル

以上が最も完全な分析: MySQL フィールド タイプの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。