< 문제 내용 >
EMPLOYEE TABLE로 부터, 아이디, 비밀번호, 이름을 입력받아
TB_USER 테이블에 삽입(INSERT)하기
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.util.Scanner;
Connection conn = null; PreparedStatement pstmt = null;
Class.forName("oracle.jdbc.driver.OracleDriver") String url = "jdbc:oracle:thin:@localhost:portNum:XE"; String userName = "user01: String password = "pass01"; conn = DriverManager.getConnection(url, userName, password);
Scanner sc = new Scanner(System.in); System.out.print("아이디 입력 : "); String id = sc.nextLine(); System.out.print("비밀번호 입력 : "); String pw = sc.nextLine(); System.out.print("이름 입력 : "); String name = sc.nextLine();
String sql = """ INSERT INTO TB_USER VALUES(SEQ_USER_NO.NEXTVAL, ?, ?, ?, DEFAULT) """;
conn.setAutoCommit(false);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, id); pstmt.setString(2, pw); pstmt.setString(3, name);
int result = pstmt.executeUpdate();
if(result > 0 ){ System.out.println(name + "님이 추가되었습니다"); con.commit(); } else { System.out.println("추가 실패"); conn.rollback(); }
if( pstmt != null ) pstmt.close(); if( conn != null ) conn.close();