在Java中使用PreparedStatement插入MySQL表记录?
要在Java中使用PreparedStatement在表中插入记录,需要使用以下语法插入记录。语法如下:
String anyVariableName= "INSERT INTO yourTableName(yourColumnName1, yourColumnName2, yourColumnName3,.........N)" + "VALUES (?, ?, ?,..............N)";
现在使用PreparedStatement对象为所有列设置值。语法如下:
PreparedstatementObject = con.prepareStatement(query); PreparedstatementObject .setXXX(1, yourValue); PreparedstatementObject .setXXX(2, yourValue); PreparedstatementObject .setXXX(3, yourValue); . . . N
以上prepared statement将解决您的问题。现在首先在MySQL中创建一个表。创建表的查询如下:
mysql> create table CourseDemo -> ( -> CourseId int, -> StudentName varchar(20), -> CourseName varchar(30) -> ); Query OK, 0 rows affected (1.86 sec)
上表位于示例数据库中。以下是使用PreparedStatement在表中插入记录的Java代码:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.util.Scanner;
public class InsertRecordInPreparedStatement {
static int cid;
static String studentName;
static String courseName;
public static void main(String[] args) {
String JdbcURL = "jdbc:mysql://:3306/sample?useSSL=false";
String Username = "root";
String password = "123456";
Connection con = null;
Scanner keyboardInput=new Scanner(System.in);
PreparedStatement pstmt = null;
String query = "INSERT INTO CourseDemo(CourseId, StudentName, CourseName)" + "VALUES (?, ?, ?)";
try {
con = DriverManager.getConnection(JdbcURL, Username, password);
input(keyboardInput);
pstmt = con.prepareStatement(query);
pstmt.setInt(1, cid);
pstmt.setString(2, studentName);
pstmt.setString(3, courseName);
int status = pstmt.executeUpdate();
if(status > 0) {
System.out.println("Record is inserted successfully !!!");
}
} catch(Exception e){
e.printStackTrace();
}
}
public static void input(Scanner keyboardInput) {
System.out.println("Enter the course id:");
cid = keyboardInput.nextInt();
System.out.println("Enter the Student Name:");
studentName = keyboardInput.next();
System.out.println("Enter the Course Name:");
courseName = keyboardInput.next();
}
}Java代码快照如下:
输出如下:
Enter the course id: 101 Enter the Student Name: John Enter the Course Name: Java Record is inserted successfully !!!
示例输出快照如下:

现在检查记录是否已插入表中,因此只需打开MySQL。使用数据库示例和以下查询,使用select语句显示表中的记录:
mysql> select *from CourseDemo;
输出如下:
+----------+-------------+------------+ | CourseId | StudentName | CourseName | +----------+-------------+------------+ | 101 | John | Java | +----------+-------------+------------+ 1 row in set (0.00 sec)
表输出快照如下:

广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP