作者:奎奎201277 | 来源:互联网 | 2014-07-09 16:02
oracle带返回值储存过程存储过程Sql代码createorreplaceproceduresp_pro_order(spNameinnvarchar2,spAddressinnvarchar2,spIdoutnumber)isbeginINSERTINTOORDER_MC(ID,NAME,ADD...
oracle带返回值储存过程
存储过程
Sql代码
create or replace procedure sp_pro_order(spName in nvarchar2,spAddress in nvarchar2,spId out number) is
begin
INSERT INTO ORDER_MC(ID,NAME,ADDRESS,CREATETIME) values(order_id.nextval,spName,spAddress,SYSDATE);
select order_id.currval into spId from dual;
end sp_pro_order;
www.2cto.com
java 代码调用
Connection cOnn=super.getConn();
try {
String sql="{call sp_pro_order(?,?,?)} ";
CallableStatement cs=conn.prepareCall(sql);
cs.setString(1, om.getName());
cs.setString(2, om.getAddress());
cs.registerOutParameter(3, oracle.jdbc.
OracleTypes.NUMBER);//返回值类型
cs.execute();
int id=cs.getInt(3);//3为返回值位置