03.데이터 수정을 위한 쿼리
데이터 수정을 위한 쿼리
package ex1;
import java.beans.Statement;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
//
public class Program3 {
public static void main(String[] args) throws SQLException, ClassNotFoundException{
String title = "TEST3";
String content = "HAHAHA";
String files = "";
int id = 3;
String url ="jdbc:oracle:thin:@localhost:1521/orcl";
String sql = "UPDATE notice "
+ "SET" // 덧셈을 하고 나면은 결과가 notice set이 되므로 결과가
+ " title = ?,"
+ " content=?,"
+ " files = ?"
+ "WHERE id =?";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(url,"eunji","1234");
// sql.Statement st =con.createStatement();
//st.execute query,update를 실행 할때 넘겼는데
PreparedStatement st=con.prepareStatement(sql); //prepare 미리 준비해서 실행하라 statement자체가 쿼리문을 가지고 있다
st.setString(1, title);
st.setString(2, content);
st.setString(3, files);
st.setInt(4, id);
//prepare쓸때는 sql을 쓰면 안된다
int result = st.executeUpdate();
System.out.println(result);
st.close();
con.close();
}
}
Exception in thread "main" java.sql.SQLSyntaxErrorException: ORA-00971: SET 키워드가 없 습니다 //오류가 발생하게 된다
String url ="jdbc:oracle:thin:@localhost:1521/orcl";
String sql = "UPDATE notice " // 쿼리부분 잘 신경 써야한다 문자열문자열 사이에 있는 빈공백을 확인해야한다
+ "SET"
+ " title = ?,"
+ " content=?,"
+ " files = ?"
+ "WHERE id =?";
댓글남기기