1.在命令客户端下建立存储过程
- use lova;
- mysql>delimiter //
- mysql>create procedure batchUpdateQuantity(q int)
- ->begin
- ->update ORDERITEM set QUANTITY=QUANTITY+1 where QUANTITY<q;
- ->end//
- mysql->delimter ;
要注意在如果想在定义中使用begin....end这样的结构,需要首先改变结束符,否则写到第5行回车时,DBMS便认为你已经写完了命令,显然这个时候命令没写完,执行时肯定会出错。
2.使用JDK提供的接口调用存储过程:
java 代码
- Connection con....
- String procedure="{call batchUpdateQuantity(?)}";
- CallableStatment cstmt=con.prepareCall(procedure);
- cstmt.setInt(1,5); //把参数设为5
- cstmt.executeUpdate();