この記事では、Oracle に関する関連知識を提供します。主に一意制約の追加に関連する問題について説明します。一意制約とは、テーブル内の 1 つまたは複数のフィールドを組み合わせると一意になる可能性があることを意味します。レコードをマークする制約について説明します。これが皆様のお役に立てば幸いです。
推奨チュートリアル: 「Oracle ビデオ チュートリアル 」
使用方法デモ例では、一意制約の作成、削除、無効化、使用方法を示します
一意性制約とは、テーブル内の 1 つのフィールドまたは複数のフィールドを組み合わせてレコードを一意に識別できる制約を指します。
Union フィールドには null 値を含めることができます。
注: Oracle では、一意制約には最大 32 列を含めることができます。
一意制約は、テーブルの作成時または ALTER TABLE ステートメントの使用時に作成できます。
CREATE TABLE table_name ( column1 datatype null/not null, column2 datatype null/not null, ... CONSTRAINT constraint_name UNIQUE (column1, column2,...,column_n) );
create table tb_supplier ( supplier_id number not null ,supplier_name varchar2(50) ,contact_name varchar2(50) ,CONSTRAINT tb_supplier_u1 UNIQUE (supplier_id)--创建表时创建唯一性约束 );
create table tb_products ( product_id number not null, product_name number not null, product_type varchar2(50), supplier_id number, CONSTRAINT tb_products_u1 UNIQUE (product_id, product_name) --定义复合唯一性约束 );
ALTER TABLE table_name ADD CONSTRAINT constraint_name UNIQUE (column1, column2, ... , column_n);
drop table tb_supplier; drop table tb_products; create table tb_supplier ( supplier_id number not null ,supplier_name varchar2(50) ,contact_name varchar2(50) ); create table tb_products ( product_id number not null, product_name number not null, product_type varchar2(50), supplier_id number );
alter table tb_supplier add constraint tb_supplier_u1 unique (supplier_id);
alter table tb_products add constraint tb_products_u1 unique (product_id,product_name);
ALTER TABLE table_name DISABLE CONSTRAINT constraint_name;
ALTER TABLE tb_supplier DISABLE CONSTRAINT tb_supplier_u1;
ALTER TABLE tb_supplier ENABLE CONSTRAINT tb_supplier_u1;
ALTER TABLE tb_supplier ENABLE CONSTRAINT tb_supplier_u1;
ALTER TABLE table_name DROP CONSTRAINT constraint_name;
ALTER TABLE tb_supplier DROP CONSTRAINT tb_supplier_u1; ALTER TABLE tb_products DROP CONSTRAINT tb_products_u1;
Oracle Tutorial"
以上がOracle による一意制約の追加の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。