oracle存儲過程into
1. oracle存儲過程select語句必須帶into嗎
oracle存儲過程select語句必須帶into。因為要將查詢結果放到變數中,如以下存儲過程:
sql">createorreplaceprocerep_test
as
v_begintimevarchar2(20);
v_endtimevarchar2(20);
v_strvarchar2(10);
begin
v_begintime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');
select'badkano'intov_strfromal;
v_endtime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');
dbms_output.put_line('開始時間為:'||v_begintime);
dbms_output.put_line('結束時間為:'||v_endtime);
end;
其中select 'badkano' into v_str from al;此句就是將「badkano」放入變數「v_str」中。
2. 在oracle執行存儲過程出現: 在此select語句中缺少into子句
oracle的存儲過程中不能直接select,必須要將結果放到變數中,即類似select count(*) into count1 from checkTmp這種寫法。
直接寫成select * from checkTmp order by expressID肯定會報錯的,因為oracle不知道你要select干什麼。
3. ORACLE 存儲過程 在此 SELECT 語句中缺少 INTO 子句,怎麼辦
select出來的結果要放到變數中去,select ... into .... from ... where ....
4. oracle存儲過程實例 為什麼 要INTO
你說的是procere或者function中的select 列 into 變數 from 。。。這種結構吧。
這就是plsql的語法規則。不難理解,你在程序中從一張表中獲取了某列或某些列的值,要想使用肯定要賦值給變數的,那麼select 。。into 就是為了賦值而定義的一種語法。
5. 關於oracle存儲過程select into 未找到數據問題
第一張圖的update不會執行,因為select
。。into報錯就直接到exception上了
第二張圖可以執行update,但是如果select沒有exception,你的update也就不會執行了。
exception有些象過程語言的goto語句,但它只在出現例外時才執行update,沒有例外就不執行
6. Oracle使用merge into 編寫存儲過程 遇編譯錯誤:PL/SQL: ORA-00926: 缺失 VALUES 關鍵字
Oracle使用merge into 編寫存儲過程 遇編譯錯誤,是設置錯誤造成的,解決方法如下:
1、首先新建存儲過程,Create or ReplaceProcere CHK_SYS_EMP 檢查系統工號。