ホームページ >データベース >mysql チュートリアル >MySQL の複数の列にわたって一意の制約を作成するにはどうすればよいですか?
データ管理では、正確で信頼性の高い記録を維持するためにデータの整合性を確保することが重要です。これを実現する 1 つの方法は、特定の列に一意の制約を定義し、同じ値を持つ重複エントリを禁止することです。この記事では、MySQL で複数の列に一意の制約を作成する方法を検討します。
この概念を説明するために、投票テーブルについて考えてみましょう。
CREATE TABLE votes ( id INT NOT NULL AUTO_INCREMENT, user VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, address VARCHAR(255), PRIMARY KEY (id) );
このテーブルには ID が含まれています列が主キーであり、他の 3 つの列 (ユーザー、電子メール、およびアドレス)。ここで、このテーブル内の 2 つの行がユーザー、電子メール、およびアドレスの値の同一の組み合わせを持たないようにしたいと考えています。つまり、これら 3 つの列にわたって一意制約を作成したいと考えています。
これを実現するには、ALTER TABLE ステートメントを ADD UNIQUE 句と組み合わせて使用します。
ALTER TABLE votes ADD UNIQUE INDEX unique_index (user, email, address);
これこのコマンドは次の 2 つのことを実行します。
この一意の制約は、次のルールを適用します。投票テーブルには、ユーザー、電子メール、アドレスの値を同じ組み合わせにすることはできません。これにより、データの整合性が確保され、重複したエントリがテーブルに挿入されるのを防ぐことができます。
要約すると、MySQL の複数の列に一意制約を適用することで、データの整合性を効果的に維持し、各行が一意に識別されるようにすることができます。指定された列の組み合わせによって決まります。
以上がMySQL の複数の列にわたって一意の制約を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。