除表以外,Oracle 還提供了視圖、函數(shù)、存儲過程、包/包體、序列、觸發(fā)器、作業(yè)等對象,以滿足數(shù)據(jù)庫業(yè)務(wù)需要。對大多數(shù)應(yīng)用程序而言,這些對象都只會少量用用,本文也只介紹創(chuàng)建和刪除這些對象的基本 SQL 語法,不會深入探討這些對象的詳細(xì)語法和具體應(yīng)用。
視圖
創(chuàng)建視圖
實際操作過程中,我發(fā)現(xiàn) Oracle 視圖有一個問題,就是不大方便注釋,每次寫好的注釋執(zhí)行之后再打開視圖定義所有注釋就全都沒了。后來我發(fā)現(xiàn)把注釋寫到末尾就不會被清除,但這樣總感覺乖乖的,而且我沒見誰這么用過,我也很少用,目前還不知道有沒有其它問題。創(chuàng)建視圖示例:
CREATE OR REPLACE VIEW v_staff2 ASSELECT t1.staff_id,t1.staff_name,t1.dept_code,t2.enum_name dept_name,t1.gender, t1.birthday,EXTRACT(YEAR FROM SYSDATE)-EXTRACT(YEAR FROM t1.birthday) age, t1.edu_bg,t1.base_salary,t1.post_salary,base_salary+post_salary fixed_salary FROM demo.t_staff t1 LEFT JOIN demo.t_field_enum t2 ON t1.dept_code=t2.enum_code AND t2.field_code='DEPT' WHERE t1.is_disabled=0-- 在職員工檔案視圖;