前回 でMySQLを復活させられたものの、アプリ経由からデータを一行しか入れられなくなってしまいました。
原因はPRIMARY KEYとして設定していた採番カラムに「AUTO INCREMENT」を設定していなかったから。
カラムを設定する際、この「AUTO INCREMENT」を理解していなかった為、このようなミスが出たと思い、備忘録兼ノートとしてこの記事を作成しました。
#AUTO INCREMENTとは?
AUTO INCREMENTは、データを追加した際にカラムに対して現在格納されている最大の数値に 1 を追加した数値を自動で格納することが出来る機能です。採番や連番など連続した数値を自動で格納させたい時に用いられます。
phpmyadminでは、上図のように「A I」のチェックボックスにチェックを入れることで、そのカラムにAUTO INCREMENTを設定することが出来ます。
#書式
以下の書式で設定することが出来ます。
CREATE TABLE db_name.tbl_name
(col_name data_type AUTO_INCREMENT, ...)```
#制約
1.一つのテーブルにつき、AUTO INCREMENTを設定できるカラムは一つ。
2.AUTO INCREMENTを設定したカラムはインデックスを設定する必要がある。
3.AUTO INCREMENTを設定したカラムにDEFAULT制約を設定することは出来ない。
4.AUTO INCREMENTは正の数値を格納した場合のみ動く
#まとめ
とりあえず簡単にまとめました。
今後得たことや気づいた点などがありましたら、追記致します。
#参考サイト
[AUTO_INCREMENTを設定する(連続した数値を自動でカラムに格納する) | MySQLの使い方] (https://www.dbonline.jp/mysql/table/index7.html )