Oracle約束的使用

來源:互聯網
上載者:User

標籤:完全   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約束的使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.