连接 MySQL 数据库的步骤和代码示例

1. 确定连接的基本信息

在连接 MySQL 数据库之前,首先需要确定以下基本信息:

  • 主机名或 IP 地址:MySQL 数据库所在的服务器主机名或 IP 地址。
  • 端口号:MySQL 数据库的监听端口,默认为 3306。
  • 数据库名称:要连接的具体数据库名称。
  • 用户名和密码:用于认证身份和授权访问的用户名和密码。

2. 导入 MySQL 驱动程序

在使用 Java 连接 MySQL 数据库之前,需要导入 MySQL 驱动程序。可以从 MySQL 官网下载适用于你的开发环境的 MySQL Connector/J 驱动程序。

3. 建立数据库连接

使用 JDBC 连接 MySQL 数据库的一般步骤如下:

步骤 描述
1 加载驱动程序
2 建立数据库连接
3 创建 Statement 对象
4 执行 SQL 语句
5 处理结果集
6 关闭数据库连接

下面是每一步需要做的事情以及对应的代码示例:

步骤 1:加载驱动程序

使用 Class.forName() 方法加载 MySQL 驱动程序。在代码中添加以下行:

Class.forName("com.mysql.cj.jdbc.Driver");

步骤 2:建立数据库连接

使用 DriverManager.getConnection() 方法建立与数据库的连接。在代码中添加以下行:

String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "password";
Connection connection = DriverManager.getConnection(url, username, password);

请注意,上述代码中的 url 是连接字符串,通过 jdbc:mysql:// 开头,后跟主机名、端口号和数据库名称。

步骤 3:创建 Statement 对象

在建立数据库连接后,需要创建 Statement 对象,用于执行 SQL 语句。在代码中添加以下行:

Statement statement = connection.createStatement();

步骤 4:执行 SQL 语句

使用 Statement 对象的 executeQuery() 方法执行 SQL 查询语句,或使用 executeUpdate() 方法执行 SQL 更新语句。在代码中添加以下行:

String sql = "SELECT * FROM mytable";
ResultSet resultSet = statement.executeQuery(sql);

步骤 5:处理结果集

对于查询语句,使用 ResultSet 对象处理返回的结果集。在代码中添加以下行:

while (resultSet.next()) {
  // 处理每一行数据
}

步骤 6:关闭数据库连接

在完成所有操作后,需要关闭数据库连接,释放资源。在代码中添加以下行:

resultSet.close();
statement.close();
connection.close();

完整示例代码

下面是一个完整的示例代码,演示了如何连接 MySQL 数据库并执行查询操作:

import java.sql.*;

public class MySQLConnectionExample {

    public static void main(String[] args) {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            
            String url = "jdbc:mysql://localhost:3306/mydatabase";
            String username = "root";
            String password = "password";
            
            Connection connection = DriverManager.getConnection(url, username, password);
            Statement statement = connection.createStatement();
            
            String sql = "SELECT * FROM mytable";
            ResultSet resultSet = statement.executeQuery(sql);
            
            while (resultSet.next()) {
                // 处理每一行数据
            }
            
            resultSet.close();
            statement.close();
            connection.close();
            
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }
    }
}

以上代码中的 mydatabase 是要连接的数据库名称,mytable 是要查询的表名。根据实际情况进行修改。

甘特图

gantt
    dateFormat  YYYY-MM-DD
    title MySQL 连接字符串连接处实现流程
    section 连接数据库
    加载驱动程序      :a1, 2022-01-01, 1d
    建立数据库连接    :a2, after a1, 2d
    创建 Statement 对象 :a3, after a2, 1d
    执行 SQL 语句     :a4, after a3, 2d
    处理结果集        :a5