Java调用MySQL存储过程,首先需要加载驱动,然后建立连接,最后通过PreparedStatement执行存储过程

Java MySQL存储过程是一种在数据库中存储的预编译SQL语句集合,可以通过调用存储过程名来执行,使用存储过程可以提高代码的重用性和可维护性。

以下是一个简单的Java MySQL存储过程示例:

java mysql存储过程java mysql存储过程

1、创建存储过程

我们需要在MySQL数据库中创建一个存储过程,假设我们有一个名为employees的表,包含idnamesalary字段,我们想要创建一个存储过程来计算员工的平均工资。

DELIMITER //
CREATE PROCEDURE AverageSalary()
BEGIN
    SELECT AVG(salary) as average_salary FROM employees;
END //
DELIMITER ;

2、注册存储过程

java mysql存储过程java mysql存储过程

在Java程序中,我们需要注册这个存储过程,以便在程序中使用它,可以使用CallableStatement对象来调用存储过程。

import java.sql.*;
public class Main {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/test";
        String user = "root";
        String password = "password";
        try {
            Connection connection = DriverManager.getConnection(url, user, password);
            CallableStatement callableStatement = connection.prepareCall("{call AverageSalary()}");
            ResultSet resultSet = callableStatement.executeQuery();
            if (resultSet.next()) {
                System.out.println("员工平均工资:" + resultSet.getDouble("average_salary"));
            }
            resultSet.close();
            callableStatement.close();
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

3、运行程序

运行上述Java程序,将输出员工平均工资,注意,需要将数据库连接信息(URL、用户名和密码)替换为实际的值。

java mysql存储过程java mysql存储过程

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。