遇到這麼乙個問題,需要通過ibatis呼叫乙個返回兩個游標的儲存過程。在網上找資料來著,發現問此問題的挺多的,但難以找到解決方案,於是,估摸著呼叫返回乙個游標的儲存過程處理方式,整出了呼叫返回兩個游標的儲存過程。現貼出來與大家共享。
舉例如下:
儲存過程:
create
orreplace
function
fn_tester(
cursor_data1
outsys_refcursor ,
cursor_data2
out
sys_refcursor )
return
number
asbegin
begin
open
cursor_data1
forselect
e.data_1,
e.data_2,
e.data_3
from
a_table e ;
open
cursor_data2
forfor
select
e.data_4,
e.data_5,
e.data_6
from
b_table e
;end
fn_tester;
sqlmap 寫法如下:
dao層資料獲取:
其中 table1、
table2是兩個pojo;
public
void
getdata(
mapparammap)
throws
sqlexception
catch
(sqlexception
e) system.
out.println(
datalist1
);system.
out.println(
datalist2);}
自己寫個測試用例就可以測試了。
帶游標的儲存過程 ibatis 呼叫方法
begin select t.type,t.orglevel into v type,v orglevel from sys organize info t where t.id ai forgid if v type 03 and v orglevel 04 then open out cur f...
如何同時返回兩個值
關鍵字就是被c語言本身占用的那些字串,比如 int,typedef。我們在定義變數或函式的名字時時要避開它們。標誌符就是我們定義的變數和函式的名字。提出乙個問題 寫乙個函式,計算兩個數相除,要求同時返回商和餘數,怎麼寫?我們知道函式的返回值只能有乙個,同時返回兩個數這跟本不可能。但用結構就變為可能了...
C語言基礎知識 C語言函式呼叫怎麼返回兩個值
在c語言中,函式只能返回乙個值,要返回兩個值,可以改換思路,通過其它方式做到。在要返回的兩個值型別相同時,可以用建立陣列的方式,將要返回的值存在陣列中,並返回陣列首位址,這樣就可以實現返回兩個值的效果。需要注意的是,要返回陣列首位址,那麼返回的值不可以是區域性變數,有如下幾種是可以的 a 使用靜態區...