プライマリキーとユニークキーの違いについて

mysqlでテーブルを作成するときに、データの重複を避けるためにプライマリキー、ユニークキーを設定できます。どちらもデータの重複を避けることが目的ですが、以下の違いがあります。

【プライマリキー】

テーブルに1列(column)だけ指定できる。

【ユニークキー】

テーブルの複数列(column)指定できる。

idを自動連番設定して、プライマリキーに設定すれば、各データを管理しやすくなります。その他columnにおいて、重複させたくないデータがある場合は、ユニークキーを設定します。

参考までにユニークキーの設定方法を記載します。

  • テーブルの作成画面にて、ユニークキーに設定したいcolumnの「インデックス」→「UNIQUE」を選択します。すると、「インデックスを追加する」のダイアログが表示されるので、「インデックス名」に任意の名前を設定します。今回は「u_index_1」というインデックスに設定しました。これで、設定完了です。設定したcolumnには重複データを入れることが出来なくなります。

【ユニークキー設定時の追加情報】

  • もし、同じテーブルに複数のユニークキーを作成する場合は、以下のような画面が表示されます。ユニークキーを連携させて複雑なルールを作るとき以外は、「単一カラムのインデックスを作成」を選んでください。

  • 今回は「u_index_2」というインデックス名でユニークキーを設定しました。

コメントはお気軽に!足跡を残したり、適当に雑談したりしてね!

メールアドレスが公開されることはありません。