初學oracle,做了個練習,雖然簡單,但是為學習oracle開始建立乙個感性的認識還是有用的。
資料庫中有三張表 srz0119(sno,sname,s***,sage,sdept), crz0119(cno,cname,ccredit) , scrz0119(sno,cno,score)
建立srz0119表。
建立crz0119表。
建立scrz0119表。
以下是在前表的基礎之上對儲存過程和觸發器的一些練習。
(1) 在jxgl資料庫中建立一儲存過程並執行,從s表中查詢所有女生的資訊。
建立儲存過程語句。
執行儲存過程的結果。
(2) 在jxgl 資料庫中建立一儲存過程並執行,從 s 表中根據學號查詢並返回該學生的姓名和年齡。
建立儲存過程
執行根據學號查詢學生的姓名和年齡。
(3) 在jxgl資料庫中建立一觸發器,保證s表中學生的年齡在8-45歲之間。
建立觸發器。
執行插入和跟新操作,引發觸發器的執行。執行結果如下截圖。
(4) 在jxgl 資料庫中建立一觸發器,當有學生選了某門課時,不能從 c 表中刪除該課程。
建立觸發器。
分別刪除一門已經被選的課程和一門未被選的課程,結果如下截圖。
練習中明白了儲存過程,觸發器的建立和使用的方式。觸發器不能有引數,也不能子啊sql語句中之間執行,而儲存過程可以。儲存過程中當有多行記錄被查詢返回時,則要使用迴圈游標進行輸出,並且開啟serveroutput 語句是:set serveroutput on。在操作觸發器時,像
中紅框部分,寫成:new.srz0119_sage>45就編譯通不過。
oracle儲存過程和觸發器
過程 建立過程,create procedure語句可以用於建立過程,簡化語法如下 create or replace procedure procedure name parameter name in out in out type begin procedure body end parame...
Oracle儲存過程,函式,觸發器
一 儲存過程的定義 1 過程 多次編譯 多次執行 過程實現計算器 declare p1 number 1 p2 number 2 sign varchar2 3 begin if sign then syso p1 p2 elsif sign then syso p1 p2 elsif sign t...
oracle觸發器和儲存過程
一 觸發器分為行級觸發和語句級觸發器,for each now 行級觸發起 基本語法為 create or replace trigger tri name before insert on table name for each now begin select sysdate into new....