淺談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
- mysql刪除主鍵索引,刪除索引語法MySql索引
- oracle 主外來鍵關係及實驗Oracle
- 也來談談無法刪除db link的問題
- 求主外來鍵的關係
- 資料庫的主外來鍵關係資料庫
- 淺談Kotlin語法篇之基礎語法(一)Kotlin
- VSCode 如何刪除無用的語言格式?VSCode
- EntityFramework Core 遷移忽略主外來鍵關係Framework
- ORACLE批量刪除無主鍵重複資料Oracle
- IoTDB SQL語法 建立、新增、修改、刪除 windowsSQLWindows
- 文章格式不對刪除
- MySQL建立資料表並建立主外來鍵關係MySql
- oracle刪除日誌Oracle
- 淺談Oracle Result CacheOracle
- oracle主鍵序列的建立,刪除,修改序列起始值Oracle
- Oracle 刪除千萬級資料量時,可以考慮以下方法來提高刪除效率Oracle
- 新的主鍵和外來鍵的語法
- [20180423]關於閃回表與主外來鍵約束.txt
- oracle adg主庫通過rman無法刪除歸檔Oracle
- 刪除oracle重複值Oracle
- Oracle 增加 修改 刪除 列Oracle
- 淺談Kotlin語法篇之變數和常量(二)Kotlin變數
- oracle級聯刪除使用者,刪除表空間Oracle
- cad刪除快捷鍵命令 cad刪除有幾種方式
- 恢復Oracle資料庫誤刪除資料的語句Oracle資料庫
- Xpath語法格式整理
- nginx rewrite語法格式Nginx
- oracle刪除重資料方法Oracle
- oracle大資料量分批刪除Oracle大資料
- 小白路程之----淺談ES6部分語法
- 淺談Kotlin語法篇之Lambda表示式完全解析(六)Kotlin
- 淺談Kotlin語法篇之擴充套件函式(五)Kotlin套件函式
- 淺談摩爾投票法
- 淺談倍增法求解LCA
- redis 過期鍵刪除策略Redis
- oracle partition by 語法Oracle
- Activiti刪除外來鍵