MySQLでテーブルを作成する際によく使用されるオプションとしてAUTO_INCREMENTとPRIMARY KEYがありますが、これらはどのように異なるのでしょうか?
AUTO_INCREMENTとは
AUTO_INCREMENTは列に対して自動的に一意の値を生成するためのオプションです。通常、主キー列と一緒に使用され、新しい行が挿入されるたびに、その列の値が1ずつ増加します。
CREATE TABLE example_table (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255)
);
PRIMARY KEYとは
PRIMARY KEYはテーブル内の行を一意に識別するためのキーです。通常、主キーは一つの列または複数の列の組み合わせで構成されます。
CREATE TABLE example_table (
id INT PRIMARY KEY,
name VARCHAR(255)
);
違いと使い分け
- AUTO_INCREMENTは列に一意の数値を生成するため、通常は主キー列と一緒に使用されます。
- PRIMARY KEYは行を一意に識別するため、その列の値が重複しないようにする必要があります。
したがって、通常の使用ケースでは、主キー列にAUTO_INCREMENTを使用して新しい行を追加し、行を一意に識別します。
これにより、データベースのパフォーマンスが向上し、データの一貫性が確保されます。