呼叫的儲存過程
create
definer
=`root`
@`localhost`
procedure
`querystudentname`
(in id char(10
),out stuname varchar(10
))begin
select sname into stuname from student where sid = id;
end
配置對映檔案<?xml version="1.0" encoding="utf-8" ?>
namespace
=>
"querystudentname"
statementtype
="callable"
parametertype
="hashmap"
>
, #
)} select
>
>
呼叫儲存過程,需要將statementtype設定成callable(預設為preparestatement)
儲存過程無論輸入引數是什麼值,語法上都需要用map來傳遞該值,然後通過map來獲取輸出值。
介面檔案
public
inte***ce
測試public
class
test
public
static
void
main
(string[
] args)
throws ioexception
}
map中的鍵的名字與sql語句中的輸入輸出引數名相同,通過params.put(「id」, 「8003118001」);傳入輸入引數,out值就會自動儲存在params中,通過鍵名stuname就可以獲取到值。 mybatis 呼叫儲存過程
引數形式 create procedure sptest.adder in addend1 integer,in addend2 integer,out thesum integer begin atomic set thesum addend1 addend2 end go parameterma...
mybatis 呼叫儲存過程
至於為什麼用map作為引數,是因為別人寫的儲存過程 可能沒有返回出參,然後就會出現下面的問題。但是別人幾百行上千行的儲存過程,我是絕對不敢去動的。然後就只能用可以為null的物件去接收返回值了,所以就從實體變為了map。void callpwfsubmit mapmap 獲取儲存過程所需要的引數 p...
mybatis 呼叫儲存過程
mybatis中的statementtype詳解 呼叫儲存過程總共有兩總語句 call 和exec 兩種語句複製一下 示例更改即可使用 call 語句 call sp sanwjimport auto exec 語句 exec sp tmailauto 4651 1.使用 update 標籤 2.i...