標籤:完全 create ref check約束 drop add for cascade prim
--5個約束,主鍵約束、外鍵約束、唯一約束、檢查約束、非空約束。
--添加主鍵約束 Alter table table_name Add constraints constraint_name Primary key (column_name);
--文法說明 constraint_name:約束名稱。 column_name:主鍵約束指定資料表中的列名。
--移除主鍵約束 Alter table table_name Drop constraint constraint_name;
--外鍵約束
--直接在表裡添加外鍵約束,需要在建立表時在最後邊添加如下語句
constraint constraint_name foreign key (column_name) reference table_name(column_name) on delete cascade;
--文法說明 constraint_name:外鍵約束的名稱。
foreign key(column_name):指定外鍵約束的列名。
reference:需要引用的表名(列名)。
on delete cascade:設定串聯刪除,當主鍵子彈被刪除是外鍵對應的欄位也同時被刪除。
--建立表後直接添加外鍵約束
Alter table table_name add constraint constraint_name foreign key(column_name) reference table_name(column_name) on delete cascade;
--刪除外鍵約束
Alter table table_name drop constraint constraint_name;
--Check約束
--在建立表是添加檢查約束,直接在欄位後邊添加約束
constraint constraint_name Check(condition);
condition:是檢查約束的條件。
--Alter Table 添加Check約束
Alter table table_name Add constraint constraint_name check(condition);
--刪除Check約束 Alter
table table_name Drop constraint constraint_name;
--Unique約束,唯一約束,
Create表時添加唯一約束 constraint constraint_name unique(column_name);
--修改表時添加唯一約束
Alter table table_name Add constraint constraint_name unique(column_name);
--移除表的唯一約束
Alter table table_name Drop constraint constraint_name;
--建立非空約束,建立表時直接添加非空約束
... not null,
--修改表時添加非空約束
Alter table table_name Modify column_name Not null;
--truncate完全刪除表,刪除後不可以恢複。
truncate table table_name;
--merge語句,批量修改和批量增加語句
Merge [into] table_name1 using table_name2 on (condition) when matched then merge_update_clause when not matched then merge_insert_clause; --文法說明 table_name1:要修改或添加的表。
table_name2:參照的更新表。 condition:table_name1和table_name之間的關係,或其他的一些條件。 merge_update_clause:如果和參照表table_name2中的條件匹配,就執行更新操作。(update set column_name1=column_name2) merge_insert_clause:如果條件不匹配,就執行新增操作。(insert into (column_name2,column_name2,...))
Oracle約束的使用