操作数据库:mysql
操作目的:在codingwhy库里面创建名为sp_updateDetail的存储过程,用于更新某条数据记录
在执行JDBC创建存储过程的代码前,我们先来看下当前的数据库结构,如下图所示:
可以看到,其函数底下是没有任何存储过程的,并且有一条id为1,name为codingwhy的记录。
JDBC创建存储过程的核心代码如下:
String jdbcURL = "jdbc:mysql://localhost:3306/codingwhy?useUnicode=true&characterEncoding=utf-8"; String jdbcUser = "root"; String jdbcPassword = ""; Class.forName("com.mysql.jdbc.Driver",2); Connection conn = DriverManager.getConnection(jdbcURL,jdbcUser,jdbcPassword,2); Statement stmt = conn.createStatement(,2); //JDBC创建存储过程 String createProcedureSql="CREATE PROCEDURE sp_updateDetail(IN v_id INT, IN v_name VARCHAR(20)) " +" BEGIN" +" UPDATE t_user SET NAME = v_name WHERE id = v_id;" +" END"; stmt.executeUpdate(createProcedureSql,2); System.out.println("JDBC创建存储过程成功...",2);
执行完以上创建存储过程的代码后,我们再来看下表结构,如下图所示:
这样就可以看到,在函数下面有名为sp_updateDetail的存储过程了。这样我们就完成了存储过程的创建了。