個人開発でDB設計を行なった際に調べた内容をまとめます。
①文字列を扱うデータ型。
char型、(例)char(30)
()の中の数字は格納できる桁数(文字列)を指定する。
格納するデータが指定した桁数に満たない場合その分だけ空白が埋められる。=固定長文字列
varchar型、(例)vachar(30)
()の中の数字は格納できる桁数(文字列)を指定する。
格納するデータが指定した桁数に満たない場合データの大きさはchar型とは異なり
空白を保存せずそのデータの大きさのまま登録される。(可変長文字列)
②数値を扱うデータ型。
ini型(整数)
整数の数値データを格納する場合はint型を指定する。
float型double型
1.4など、少数点を含む数値はfloat型、もしくはdouble型を使用する。
これらは浮動小数点型とよばれ、概数値(おおよその数)を扱うものとなっているので、
金額などより正確な値を扱う必要がある場合は後述する「固定少数型」を採用する必要がある。
decimal型(固定少数型)、(例)decimal(5,2)
小数点の中でも金額データなどより正確な数値が求められる場合はdecimal型を採用する。
例の場合少数部分が2桁、合計で5桁の値を格納することが出来る。
※-999.99から999.99 の範囲を格納可能となる
③時間、日付を扱うデータ型。
date型(日付)
時間以外の年月日の値を‘YYYY-MM-DD’ 形式で扱う。
time型(時間)
時間の値を‘HH:MM:SS’ 形式で扱う
datetime型、timestamp型(日時)
日時(日付と時刻)を記録する場合、datetime型もしくは、timestamp型を使用する。