您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Oracle中視圖有什么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Oracle中視圖有什么用”這篇文章吧。
1.什么是視圖?
視圖(VIEW)也被稱為虛表,即虛擬的表,是一組數(shù)據(jù)的邏輯表達(dá)
視圖對應(yīng)于一條SELECT語句,結(jié)果集被賦予一個(gè)名字, 即視圖名字
視圖本身不包含任何數(shù)據(jù),只是映射到基表的一個(gè)查詢語句,當(dāng)基表數(shù)據(jù)發(fā)生變化,視圖數(shù)據(jù)也隨之發(fā)送變化
作用:重用代碼,保護(hù)數(shù)據(jù)
2.創(chuàng)建視圖 需要有權(quán)限 GRANT CREATE VIEW TO user scott;
CREATE VIEW view_name 別名
不包含函數(shù) 叫簡單視圖
包含函數(shù) 表達(dá)式 復(fù)雜視圖
基于多個(gè)表 連接視圖
OR REPLACE 更新視圖 如果存在則替換
語法
CREATE OR REPLACE VIEW 視圖名稱 SELECT語句
隱藏列名稱 在SELECT語句中增加別名
CREATE OR REPLACE VIEW v_emp_10 AS SELECT empno id, ename name,sal salary,deptno deptno FROM emp WHERE deptno=10;
查看視圖結(jié)構(gòu) DESC 視圖名稱
增加別名后 只能用別名進(jìn)行查詢視圖 SELECT 姓名,工資,工作 FROM v_emp_10;
增加 WITH CHECK OPTION 防止在簡單視圖模式下 插入臟數(shù)據(jù)到基表內(nèi)
CREATE OR REPLACE VIEW v_emp_10 AS SELECT empno id,
ename name,sal salary,deptno deptno FROM emp WHERE deptno=10 WITH CHECK OPTION;
復(fù)雜視圖的創(chuàng)建
CREATE VIEW v_emp_salary
AS
SELECT d.dname,
AVG(e.sal) avg_sal,
SUM(e.sal) sum_sal,
MAX(e.sal)max_sal,
MIN(e.sal) min_sal
FROM emp e JOIN dept d ON e.deptno =d.deptno GROUP BY d.dname;
復(fù)雜視圖的查詢
SELECT * FROM v_emp_salary;
復(fù)雜視圖不允許DML操作
以上是“Oracle中視圖有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。