Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Inserting records into a MySQL table using PreparedStatement in Java?
To insert a record in the table using PreparedStatement in Java, you need to use below syntax to insert records. The syntax is as follows −
String anyVariableName= "INSERT INTO yourTableName(yourColumnName1, yourColumnName2, yourColumnName3,.........N)" + "VALUES (?, ?, ?,..............N)";
Now use the PreparedStatement object to set the value for all columns. The syntax is as follows −
PreparedstatementObject = con.prepareStatement(query); PreparedstatementObject .setXXX(1, yourValue); PreparedstatementObject .setXXX(2, yourValue); PreparedstatementObject .setXXX(3, yourValue); . . . N
The above prepared statement will solve your problem. Now first create a table in MySQL. The query to create a table is as follows −
mysql> create table CourseDemo -> ( -> CourseId int, -> StudentName varchar(20), -> CourseName varchar(30) -> ); Query OK, 0 rows affected (1.86 sec)
The above table is in a sample database. Now here is the Java code to insert a record in the table with the help of PreparedStatement −
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://localhost: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();
}
}
The snapshot of Java code is as follows −
The following is the output −
Enter the course id: 101 Enter the Student Name: John Enter the Course Name: Java Record is inserted successfully !!!
Here is the snapshot of sample output −

Now check the record is inserted in the table or not, therefore just open MySQL. Use the database sample and the following query to display a record from the table using a select statement −
mysql> select *from CourseDemo;
The following is the output −
+----------+-------------+------------+ | CourseId | StudentName | CourseName | +----------+-------------+------------+ | 101 | John | Java | +----------+-------------+------------+ 1 row in set (0.00 sec)
Here is the snapshot of table output −
