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
위의 준비된 진술은 당신의 문제를 해결할 것입니다. 이제 먼저 MySQL에서 테이블을 생성합니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -
mysql> 테이블 생성 CourseDemo-> (-> CourseId int,-> StudentName varchar(20),-> CourseName varchar(30)-> ), 쿼리 확인, 영향을 받는 행 0개(1.86초)
위의 표는 샘플 데이터베이스에 있습니다. 이제 다음은 PreparedStatement -
의 도움으로 테이블에 레코드를 삽입하는 Java 코드입니다.가져오기 java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;가져오기 java.sql.Statement;import java.util.Scanner;public class InsertRecordInPreparedStatement { static int cid; 정적 문자열 학생 이름; 정적 문자열 코스 이름; 공개 정적 무효 메인(문자열[] 인수) { 문자열 JdbcURL ="jdbc:mysql://localhost:3306/sample?useSSL=false"; 문자열 사용자 이름 ="루트"; 문자열 암호 ="123456"; 연결 con =null; 스캐너 keyboardInput=new 스캐너(System.in); PreparedStatement pstmt =null; 문자열 쿼리 ="INSERT INTO CourseDemo(CourseId, StudentName, CourseName)" + "VALUES(?, ?, ?)"; try { con =DriverManager.getConnection(JdbcURL, 사용자 이름, 비밀번호); 입력(키보드입력); pstmt =con.prepareStatement(쿼리); pstmt.setInt(1, cid); pstmt.setString(2, 학생 이름); pstmt.setString(3, 코스명); 정수 상태 =pstmt.executeUpdate(); if(status> 0) { System.out.println("레코드가 성공적으로 삽입되었습니다!!!"); } } catch(예외 e){ e.printStackTrace(); } } 공개 정적 무효 입력(스캐너 keyboardInput) { System.out.println("과정 ID를 입력하세요:"); cid =keyboardInput.nextInt(); System.out.println("학생 이름을 입력하세요:"); 학생 이름 =keyboardInput.next(); System.out.println("수업명을 입력하세요:"); 코스 이름 =keyboardInput.next(); }}
자바 코드의 스냅샷은 다음과 같습니다 -
다음은 출력입니다 -
과정 아이디 입력:101학생 이름 입력:John과정 이름 입력:JavaRecord가 성공적으로 삽입되었습니다!!!
다음은 샘플 출력의 스냅샷입니다 -
이제 레코드가 테이블에 삽입되었는지 확인하고 MySQL을 엽니다. 데이터베이스 샘플과 다음 쿼리를 사용하여 select 문을 사용하여 테이블의 레코드를 표시하십시오 -
mysql> *CourseDemo에서 선택,
다음은 출력입니다 -
+----------+-------------+------------+| 코스 ID | 학생 이름 | 코스명 |+----------+------------+------------+| 101 | 존 | 자바 |+----------+-------------+------------+1행 세트(0.00초)사전>다음은 테이블 출력의 스냅샷입니다 -