ORACLE儲存過程----基本語法
阿新 • • 發佈:2019-02-09
for example:
create or replace procedure sp_login_error_count(user_name_var varchar2) IS
--建立名為sp_login_error_count的儲存過程,並定義傳參
--informix的語法(drop procedure sp_login_error_count;create procedure sp_login_error_count(user_name_var varchar(50))) error_count_var integer;
--變數定義
--informix語法(define error_count_var integer;) begin
--程式開始
--informix語法不用begin,直接開始 select error_count into error_count_var from users where user_name=user_name_var;
--select語句,找到的值放到變數中
--informix語法一樣 error_count_var :=error_count_var+1;
--變數加1,這是pl/sql的變數賦值運算。
--informix語法(let error_count_var=error_count_var+1;) update users set error_count= error_count_var where user_name =user_name_var ;
--更新統計數
--informix語法一樣 commit;
--提交
--informix不需要提交 end sp_login_error_count;
--結束儲存過程
--informix語法(end procedure;)
ORACLE儲存過程執行為execute procedure_name或exec procedure_name
INFORMIX儲存過程執行為execute procedure procedure_name pl/sql程式由三個塊組成:宣告部分、執行部分、異常處理部分 declare
/* 宣告部分: 在此宣告PL/SQL用到的變數,型別及游標 */
begin
/* 執行部分: 過程及SQL語句 , 即程式的主要部分 */
Exception
/* 執行異常部分: 錯誤處理 */
End; 其中 執行部分是必須的。
--建立名為sp_login_error_count的儲存過程,並定義傳參
--informix的語法(drop procedure sp_login_error_count;create procedure sp_login_error_count(user_name_var varchar(50))) error_count_var integer;
--變數定義
--informix語法(define error_count_var integer;) begin
--程式開始
--informix語法不用begin,直接開始 select error_count into error_count_var from users where user_name=user_name_var;
--select語句,找到的值放到變數中
--informix語法一樣 error_count_var :=error_count_var+1;
--變數加1,這是pl/sql的變數賦值運算。
--informix語法(let error_count_var=error_count_var+1;) update users set error_count= error_count_var where user_name =user_name_var ;
--更新統計數
--informix語法一樣 commit;
--提交
--informix不需要提交 end sp_login_error_count;
--結束儲存過程
--informix語法(end procedure;)
ORACLE儲存過程執行為execute procedure_name或exec procedure_name
INFORMIX儲存過程執行為execute procedure procedure_name pl/sql程式由三個塊組成:宣告部分、執行部分、異常處理部分 declare
/* 宣告部分: 在此宣告PL/SQL用到的變數,型別及游標 */
begin
/* 執行部分: 過程及SQL語句 , 即程式的主要部分 */
Exception
/* 執行異常部分: 錯誤處理 */
End; 其中 執行部分是必須的。