ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JDBC 4 - 데이터 입력하기와 PreparedStatement
    servlet/JDBC 2021. 11. 30. 21:53
    728x90
    반응형

    데이터 입력하기

    VALUES (?,?,?)
    PreparedStatement st = con.prepareStatement(sql);
    		st.setString(1, title);
    		st.setString(2, writerId);
    		st.setString(3, content);
    //조작(insert, update, delete)은 executeUpdate
    int rs = st.executeUpdate(sql);
    
    //<참고>
    //데이터베이스 커밋해준다.
    con.commit();
    //데이터베이스 롤빽해준다.
    con.rollback();
    // 위 두개를 사용하기 위해서는 con.setAutoCommit(false);를 써줘야한다
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
    		
    		String title = "TEST2";
    		String writerId = "NEWLEC";
    		String content = "hahaha";
    		
    		String url = "jdbc:oracle:thin:@localhost:1521/xepdb1";
    		String sql = "INSERT INTO notice ("
    				+ "    title,"
    				+ "    writer_id,"
    				+ "    content"
    				// VALUES값을 PreparedStatement 객체가 넣어줄수 있다.
    				+ ") VALUES (?,?,?)"; // VALUES값을 pRE
    		
    		Class.forName("oracle.jdbc.driver.OracleDriver");
    		Connection con = DriverManager.getConnection(url, "test", "1111");
    //		Statement st = con.createStatement();
    //		미리 시퀄문을 준비해서 값을 준비하여 바로 실행만 할 수있도록 준비
    		PreparedStatement st = con.prepareStatement(sql);
    		st.setString(1, title);
    		st.setString(2, writerId);
    		st.setString(3, content);
    		
    //		insert, update, delete는 ececuteUpdate를 쓴다.
    //		제대로 쿼리문이 실행되었는지 result값 반환
    		int result = st.executeUpdate();
    		
    		System.out.println(result);
    		st.close();
    		con.close();
    	}
    728x90
    반응형

    댓글

Designed by Tistory.