ホームページ  >  記事  >  データベース  >  SQLの一意性制約の用途は何ですか?

SQLの一意性制約の用途は何ですか?

清浅
清浅オリジナル
2019-05-09 09:27:556740ブラウズ

SQL における一意制約の役割は、列内に同じレコード値が 2 つ存在しないように、各レコードが一意の識別子を持つようにすることです。テーブルの主キーは一意制約です。ただし、主キーは 1 つだけ存在できるため、他の列のデータの繰り返しが許可されない場合は、一意制約を確立できます。

SQLの一意性制約の用途は何ですか?

#SQL における一意制約の役割は、各レコードが一意の識別子を持つようにして、レコード内に同じレコード値が 2 つ存在しないようにすることです。カラム。

一意制約

SQL の一意制約は、特定の列に同じ 2 つのレコード値が存在することを防ぎます。つまり、これは、各レコードには一意の識別子があるため、列に重複する値は存在しません。テーブルの主キーは一意制約ですが、主キーは 1 つだけであるため、他の列のデータの繰り返しが許可されない場合は、一意制約を確立できます。

一意制約の作成

たとえば、次の SQL は CUSTOMERS という名前の新しいテーブルを作成し、5 つの列を追加します。ここでは、AGE 列が一意になるように設定されているため、同じ年齢のレコードが 2 つ存在することはできません。

CREATE TABLE CUSTOMERS(
       ID   INT              NOT NULL,
       NAME VARCHAR (20)     NOT NULL,
       AGE  INT              NOT NULL UNIQUE,
       ADDRESS  CHAR (25) ,
       SALARY   DECIMAL (18, 2),       
       PRIMARY KEY (ID));

CUSTOMERS テーブルが作成されている場合は、AGE 列に一意制約を追加します。次のステートメントと同様です:

ALTER TABLE CUSTOMERS;
MODIFY AGE INT NOT NULL UNIQUE;

複数の列での名前付き制約をサポートする次の構文も使用できます:

ALTER TABLE CUSTOMERS;
ADD CONSTRAINT myUniqueConstraint UNIQUE(AGE, SALARY);

一意の制約の削除

#UNIQUE 制約を削除するには、次の SQL を使用してください:

ALTER TABLE CUSTOMERS;
DROP CONSTRAINT myUniqueConstraint;

MySQL を使用している場合は、次の構文を使用できます:

ALTER TABLE CUSTOMERS
DROP INDEX myUniqueConstraint;

以上がSQLの一意性制約の用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。