sqlのテーブルでユニーク制約を設定する方法は何ですか?

SQLでは、UNIQUEキーワードを使用して、一意制約を設定することができます。一意制約は、表の特定の列や複数の列の値が一意であることを保証することができます。つまり、表全体でこれらの列の値が重複してはいけないことを意味します。表を作成する際に、列の定義の最後にUNIQUEキーワードを使用して一意制約を設定することができます。例えば、”users”という名前の表を作成し、”username”という列がある場合、次のような構文を使用して一意制約を設定できます。

CREATE TABLE users (

id INT PRIMARY KEY,

username VARCHAR(255) UNIQUE,

);


上記の例では、”username”列が一意制約として設定されており、つまりテーブル内の任意の2行のデータの”username”列の値が同じであってはならないことを意味します。データを挿入または更新しようとした際に一意制約が違反されると、データベースはエラーをスローします。複数の列に一意制約を設定したい場合は、複数列の一意制約を使用できます。例えば、”users”という名前のテーブルを作成し、”username”と”email”の2つの列がある場合、複数列の一意制約を設定するためには次の構文を使用できます。

CREATE TABLE users (

id INT PRIMARY KEY,

username VARCHAR(255),

email VARCHAR(255),

UNIQUE (username, email),

);


上記の例では、「username」と「email」の2つの列が複数列ユニーク制約として設定されており、これは表内の任意の2行のデータの「username」と「email」列の組み合わせ値が同じであってはいけないことを意味します。データの挿入や更新を試みる際に複数列ユニーク制約が違反されると、データベースはエラーを送出します。

bannerAds