在Java中使用JDBC使用PreparedStatement插入记录?

先决条件:

  1. 如何在Java中使用JDBC创建表?

  2. 如何在Java中通过JDBC插入记录?

  3. 如何在Java中使用JDBC显示所有记录?

  4. 如何在Java中使用JDBC通过字段显示特定记录?

  5. 如何在Java中使用JDBC删除特定记录?

  6. 如何在Java中使用JDBC编辑记录?

创建一个Connection类的对象并连接到数据库。

然后,我们需要输入MYSQL表的所有字段。之后,我们创建一个PreparedStatement类的对象,并准备一个带有传递参数(?)的MySQL查询。此后,我们设置传递参数的值。

然后,我们使用executeUpdate()Statement类的方法method执行查询。

数据库详细信息:

  • 主机名:本地主机

  • 端口号:3306

  • 用户名:root

  • 密码:123

  • 数据库名称:demo

  • 表名:员工

  • 现场:EMPID(职员)

Java程序使用JDBC在PreparedStatement类的帮助下插入记录

import java.io.DataInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;

public class ExPrepareStatement {
	public static void main(String[] args) {
		try{
			Class.forName("com.mysql.jdbc.Driver").newInstance();

			// serverhost = localhost,端口= 3306,用户名= root,密码= 123-
			Connection cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/demo","root","123");

			DataInputStream KB=new DataInputStream(System.in);

			//输入员工编号
			System.out.print("Enter Employee ID: ");
			String eid=KB.readLine();
			//输入员工姓名
			System.out.print("Enter Employee Name: ");
			String en=KB.readLine();
			//输入员工的出生日期
			System.out.print("Enter Employee Date Of Birth: ");
			String ed=KB.readLine();
			//输入员工城市
			System.out.print("Enter Employee City: ");
			String ec=KB.readLine();
			//输入员工薪水
			System.out.print("Enter Employee Salary: ");
			String es=KB.readLine();

			//创建PreparedStatement类的对象并传递参数(?)
			PreparedStatement smt=cn.prepareStatement("insert into employees values(?,?,?,?,?)");

			//设置值
			smt.setString(1, eid);
			smt.setString(2, en);
			smt.setString(3, ed);
			smt.setString(4, ec);
			smt.setInt(5, Integer.parseInt(es));

			//执行更新
			smt.executeUpdate();
			System.out.println("Record Submitted....");
			
			//关闭文件
			cn.close();
		}
		catch(Exception e){
			System.out.println(e);
		}
	}
}

输出(在控制台中)

Enter Employee ID: 200
Enter Employee Name: Akash
Enter Employee Date Of Birth: 04/04/1990
Enter Employee City: Mumbai
Enter Employee Salary: 40000
Record Submitted....

输出(在数据库中)

使用JDBC在Java中使用PreparedStatement插入记录