淺談Oracle 主外來鍵刪除語法格式
Oracle
99語法
--表連線 99語法
--笛卡爾積 cross join
select * from emp,dept;
select * from emp cross join dept;
--等值連線 | 非等值連線
--join ..on
--等值
select empno,ename,emp.deptno,dname from emp join dept on emp.deptno = dept.deptno;
--30部門員工資訊 薪資等級資訊
select e.deptno,max(sal),count(grade) from emp e join salgrade s on sal between losal and hisal where e.deptno in( 10,30) group by e.deptno;
--查詢所有員工的員工資訊以及上級經理人資訊
select * from emp e1 join emp e2 on e1.mgr = e2.empno order by e1.empno;
--外連線
--主表 : 無論是否滿足連線條件,都能顯示主表中的資料
--left join : 主表在左邊
--right join : 主表在右邊
select * from emp e1 left join emp e2 on e1.mgr = e2.empno order by e1.empno;
select * from emp e2 right join emp e1 on e1.mgr = e2.empno order by e1.empno;
select *
from emp e
join dept d
on e.deptno = d.deptno
join salgrade
on sal between losal and hisal;
建立表結構
--在建立表的同時欄位後面新增約束,指定約束名
--資料型別(預設位元組) 如果想要以字元個數為單位 varchar2(5 char)
create table school(
sid number(5) constraints pk_school primary key,
--唯一約束
sname varchar2(5 char) constraints unique_sname unique,
--學校位置
location varchar2(30),
--表結構結束之前新增約束
constraint loc_not_null check(location not null)
)
主鍵:primary key —>外加起主鍵別名constraints
外來鍵:例如要在表結構裡面建立那麼使用:references 表名(表的主鍵),倘若在表結構外面那麼就用追加欄位:foreign key(外來鍵的主表id) —>外加起主鍵別名constraints
例如:
--DDL
--新增結構中的外來鍵
alter table student add constraint FK_CID foreign key(cid) references clazz(cid);
--修改結構中的刪除約束
alter table student drop constraints FK_CID;
刪除資料(delete)
- 解說遇到的問題
/*刪除資料:
刪除的是從表中的資料->正常刪除
刪除的是主表中的沒有被從表資料引用的主表資料的時候,可以直接刪除
但是刪除的是主表中被從表資料所引用的主表資料的時候
1) 先刪除從表中引用了當前主表資料的那些從表資料,然後再刪除當前主表資料
2) 刪除主表資料的同時,為從表中引用了當前主表資料的外來鍵欄位設定為null on delete set null
3) 刪除主表資料的同時,刪除那些引用了當前主表資料的從表資料 on delete cascade
*/
--外來鍵約束
cid number(5) constraint fk_cid references class(cid) on delete cascade --on delete set null
相關文章
- 批量刪除MSSQL 中主外來鍵約束SQL
- 主外來鍵關聯刪除(on delete set null和on delete cascade)deleteNull
- mysql刪除主鍵索引,刪除索引語法MySql索引
- 利用虛擬列實現虛擬刪除的主外來鍵約束
- oracle 主外來鍵關係及實驗Oracle
- oracle主外來鍵鎖_lock_約束Oracle
- 求主外來鍵的關係
- 檢視主外來鍵關係
- ORACLE查詢表之間的主外來鍵關係Oracle
- mysql主外來鍵依賴關係MySql
- oracle中查詢、禁用、啟用、刪除表外來鍵Oracle
- Oracle 查詢表與表之間的 主外來鍵關係Oracle
- 資料庫的主外來鍵關係資料庫
- 解決無法刪除表,提示被外來鍵約束引用
- Gradle技巧之語法淺談Gradle
- 淺談Kotlin語法篇之基礎語法(一)Kotlin
- EntityFramework Core 遷移忽略主外來鍵關係Framework
- sql 查詢 主外來鍵的 一點心得SQL
- Oracle刪除主鍵保留索引的方法Oracle索引
- mysql 刪除老是報外來鍵約束MySql
- 求主外來鍵的關係的指令碼(ZT)指令碼
- 【Foreign Key】Oracle外來鍵約束三種刪除行為Oracle
- VSCode 如何刪除無用的語言格式?VSCode
- 新的主鍵和外來鍵的語法
- MySQL建立資料表並建立主外來鍵關係MySql
- 生產庫故障分析(主外來鍵和DML效能分析)
- 資料完整性約束:主鍵、外來鍵、各種約束的建立刪除語句
- 刪除 oracleOracle
- ORACLE批量刪除無主鍵重複資料Oracle
- mysql中外來鍵約束級聯更新與刪除MySql
- [20160704]NULL與主外來鍵問題.txtNull
- 淺談摩爾投票法
- 【PK】Oracle 10g刪除主鍵約束後無法刪除唯一約束索引問題的模擬與分析Oracle 10g索引
- oracle 11.2.0.4 db link建立之sid語法一點淺談之一Oracle
- 外來鍵刪除(T-SQL Drop Foreign Key)SQL
- Activiti刪除外來鍵
- Xpath語法格式整理
- nginx rewrite語法格式Nginx