在Java编程中,JDBC模块是一个重要的模块,可以连接数据库并进行各种操作。其中,插入操作(Insert)是数据库中最常见的操作之一。本文将详细介绍在Java中如何使用JDBC模块进行数据插入的操作。
一、准备工作
在使用JDBC进行数据库操作前,需要先在项目中引入相应的数据库连接驱动包。以MySQL数据库为例,可以在Maven中添加以下依赖:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
引入依赖后,还需要在代码中加载数据库驱动:
Class.forName("com.mysql.cj.jdbc.Driver");
二、建立数据库连接
在进行数据库操作前,需要先创建数据库连接。可以通过以下代码实现:
String url = "jdbc:mysql://localhost:3306/test_db"; String user = "root"; String password = "123456"; Connection conn = DriverManager.getConnection(url, user, password);
其中,url为数据库的连接地址,user和password分别为数据库的用户名和密码。
三、编写SQL语句
在进行数据插入操作时,需要先编写SQL语句。例如向表中插入一条记录,可以编写以下SQL语句:
String sql = "INSERT INTO student (name, age, gender) VALUES (?, ?, ?)";
其中,student为表名,name、age、gender为表的字段名,?为占位符。
四、设置参数
在编写完SQL语句后,还需要设置占位符的值。可以通过以下代码实现:
PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, "Tom"); pstmt.setInt(2, 20); pstmt.setString(3, "male");
其中,setString(int parameterIndex, String x)方法用于设置字符串类型的占位符,setInt(int parameterIndex, int x)用于设置整型类型的占位符。
五、执行SQL语句
设置参数后,即可执行SQL语句。可以通过以下代码实现:
pstmt.executeUpdate();
其中,executeUpdate()方法用于执行SQL语句。
六、关闭数据库连接
操作完成后,需要关闭数据库连接。可以通过以下代码实现:
pstmt.close(); conn.close();
其中,close()方法用于关闭PreparedStatement和Connection对象。
完整代码示例:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class JdbcInsertDemo {
public static void main(String[] args) throws Exception {
// 1. 加载数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 2. 建立数据库连接
String url = "jdbc:mysql://localhost:3306/test_db";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);
// 3. 编写SQL语句
String sql = "INSERT INTO student (name, age, gender) VALUES (?, ?, ?)";
// 4. 设置参数
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "Tom");
pstmt.setInt(2, 20);
pstmt.setString(3, "male");
// 5. 执行SQL语句
pstmt.executeUpdate();
// 6. 关闭数据库连接
pstmt.close();
conn.close();
}
}
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/249012.html
微信扫一扫
支付宝扫一扫