--delete from 表名 where 條件; 滿足條件的刪除,如果沒有條件,預設刪除全部
--刪除資料如果當前的表作為主表存在,需要考慮當前要刪除的資料是否有被從表引用,如果有 3 中解決方式
-- 預設先刪除從表中引用了資料,刪除主表的這個資料
-- on delete set null
-- on delete cascade
--刪除表 從表可以直接刪除 刪除的是主表
--先刪除所有的從表,再刪除主表
--刪除主表的同時刪除主從表之間的主外來鍵約束 cascade constraint
--1.刪除表時候
--1)預設先刪除從表後刪除主表 2)執意要刪除主表刪除主表並同時刪除主外來鍵約束 drop table sxt_class cascade constraints;
drop table sxt_class cascade constraints; --constraints 是約束條件的意思
--2.刪除主表中的資料的時候,刪除從表資料可以直接刪除
--這個主表資料如果沒有被從表中的資料引用,可以直接刪除
--這個主表資料如果已經被從表中的資料引用,需要處理
--1) 先刪除從表中引用了的資料 再刪除主表的這個資料
--2)新增外來鍵約束的時候 on delete set null,當主表資料被刪除時,從表引用這條資料的外來鍵字段值為null刪除時設定欄位為空--3)新增外來鍵約束的時候 on delete cascade刪除主表資料的時候級聯刪除從表中引用了的這些資料 ,刪除時設定整行資料空
create table sxt_student(
--主鍵約束 (非空+唯一)
sid number(5) primary key,
--非空約束 not null
--constraints sname_not_null這是設定如果報錯提示訊息會告訴你那個欄位錯了,起個別名
sname varchar2(4 char) constraints sname_not_null not null,
cid number(5),
constraints fk_sxt_class_cid foreign key(cid) references sxt_class(cid) on delete cascade--on delete set null
)
MySQL 檢視資料庫中有主外來鍵關係的表資訊 2
sql select c.table schema 擁有者,c.referenced table name 父表名稱,c.referenced column name 父表字段,c.table name 子表名稱,c.column name 子表字段,c.constraint name 約束名,t....
建立表和新增主外來鍵約束
本文主要說明如何建立表並給表加上主外來鍵約束。主鍵 primary key 它是用來唯一確定表中的某一行,相當於乙個人的身份證號碼。如果公共關鍵字在乙個關係中是主關鍵字,那麼這個公共關鍵字被稱為另乙個關係的外來鍵 foreign key 由此可見,外來鍵表示了兩個關係的相關聯絡。以另乙個關係的外來鍵...
MySQL建立資料表並建立主外來鍵關係
為mysql資料表建立主外來鍵需要注意以下幾點 需要建立主外來鍵關係的兩個表的儲存引擎必須是innodb。外來鍵列和參照列必須具有相似的資料型別,即可以隱式轉換的資料型別。外來鍵列和參照列必須建立索引,如果外來鍵列不存在索引,mysql將自動建立索引。一 sql語句建立資料表並設定主外來鍵關係 cr...