MySQL - Java 语法
为了与数据库通信,Java 提供了一个名为 JDBC(Java 数据库连接)的库。JDBC 提供了一组专为数据库连接而设计的类和方法,使 Java 开发人员能够执行诸如建立连接、执行查询以及管理 MySQL 数据库中的数据等任务。
JDBC 安装
要在 Java 中使用 MySQL,您需要使用 JDBC(Java 数据库连接)驱动程序将 Java 应用程序连接到 MySQL 数据库。以下是安装和使用 MySQL Connector/J 的常规步骤,它是 Java 的官方 MySQL JDBC 驱动程序 -
步骤 1:下载 MySQL Connector/J
访问官方 MySQL Connector/J 下载页面:MySQL Connector/J 下载。
步骤 2:选择合适的版本
根据您的 MySQL 服务器版本和 Java 版本选择合适的版本。下载包含 JDBC 驱动程序的 ZIP 或 TAR 压缩包。
步骤 3:解压压缩包
将下载的压缩包内容解压到计算机上的某个位置。
步骤 4:将 Connector/J 添加到您的 Java 项目
在您的 Java 项目中,将 Connector/J JAR 文件添加到您的类路径。您可以在 IDE 中执行此操作,也可以手动将 JAR 文件复制到项目中。
步骤 5:使用 Java 连接 MySQL 数据库
在 Java 代码中,使用 JDBC API 连接 MySQL 数据库。
用于访问 MySQL 的 Java 函数
以下是从 Java 访问 MySQL 所涉及的主要函数 -
S.No | 函数 &说明 |
---|---|
1 |
DriverManager.getConnection(String url, String user, String password) 使用指定的 URL、用户名和密码建立与数据库的连接。 |
2 |
createStatement() 创建一个用于执行 SQL 查询的 Statement 对象。 |
3 |
executeQuery(String sql) 执行 SQL SELECT 查询并返回包含结果集的 ResultSet 对象。 |
4 |
executeUpdate(String sql) 执行 SQL INSERT、UPDATE、DELETE 或其他非查询语句。 |
5 |
next() 将游标移动到结果集中的下一行。如果有下一行,则返回 true,否则返回 false。 |
6 |
getInt(String columnLabel) 检索结果集当前行中指定列的值。 |
7 |
prepareStatement(String sql) 创建一个用于执行参数化 SQL 查询的 PreparationStatement 对象。 |
8 |
setXXX(int parameterIndex, XXX value) 设置 prepared 语句中指定参数的值语句。 |
9 |
executeQuery(), executeUpdate() 将准备好的语句作为查询或更新执行。 |
10 |
setAutoCommit(boolean autoCommit) 启用或禁用自动提交模式。 |
11 |
commit() 提交当前事务。 |
12 |
rollback() 回滚当前事务。 |
基本示例
要使用 Java 连接并与 MySQL 数据库通信,您可以按照以下步骤操作 -
- 加载与您的数据库相关的 JDBC 驱动程序。
- 使用"DriverManager.getConnection()"创建与数据库的连接。
- 创建"Statement"或"PreparedStatement"用于执行 SQL 查询。
- 使用"executeQuery()"执行 SELECT 查询,或使用"executeUpdate()"执行其他语句。
- 遍历"ResultSet"以处理检索到的数据。
- 关闭"ResultSet"、"Statement"和"Connection"以释放资源。
- 将数据库代码包装在 try-catch 块中以处理异常。
- 在以下情况下使用事务将多个操作作为一个单元执行。
以下示例展示了 Java 程序调用任何 MySQL 查询的通用语法 -
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class DatabaseInteractionExample { public static void main(String[] args) { try { // 加载 JDBC 驱动程序 Class.forName("com.mysql.cj.jdbc.Driver"); // 连接到数据库 Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/your_database", "your_username", "your_password"); // 执行查询 Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery("Your SQL Query"); // 处理结果 while (resultSet.next()) { // 过程数据 } // 关闭资源 resultSet.close(); statement.close(); connection.close(); // 处理异常 } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } } }