입력
<insert 쿼리문>
INSERT INTO NOTICE (
TITLE,
WRITER_ID,
CONTENT,
FILES
) VALUES (
'TEST',
'NEWLEC',
'TEST CONTENTS',
''
);
<자바 코드>
import java.sql.*;
public class Program2 {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String title = "TEST2";
String writerId = "NEWLEC";
String content = "hahahaha";
String files = "";
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String sql = "INSERT INTO NOTICE (" + " TITLE, " + " WRITER_ID," + " CONTENT," + " FILES"
+ ") VALUES (?, ?, ?, ?)";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(url, "system", "1234");
// Statement st = con.createStatement();
PreparedStatement st = con.prepareStatement(sql); // Statement에 ?의 값을 채울 수 있는 역할 추가
st.setString(1, title); // 쿼리문에 (?의 인덱스. 1부터 시작, 값) 셋팅
st.setString(2, writerId);
st.setString(3, content);
st.setString(4, files);
int result = st.executeUpdate(); // insert, update, delete(결과집합 없음). 데이터 조작.
// ResultSet rs = st.executeQuery(sql); //select(결과집합 존재)
st.close();
con.close();
}
}
수정
<쿼리>
UPDATE NOTICE
SET
TITLE = 'TEST3',
CONTENT = 'updating',
FILES = ''
WHERE ID = 3;
<JAVA>
import java.sql.*;
public class Program2 {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String title = "TEST3";
String content = "hahahaha3";
String files = "";
int id = 3;
String url = "jdbc:oracle:thin:@localhost:1521:xe";
//쿼리문 옮겨올 때 띄어쓰기까지 다 반영해서 적어줘야함.
String sql = "UPDATE NOTICE "
+ "SET "
+ " TITLE = ?,"
+ " CONTENT = ?,"
+ " FILES = ?"
+ "WHERE ID = ?";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(url, "system", "1234");
// Statement st = con.createStatement();
PreparedStatement st = con.prepareStatement(sql); // Statement에 ?의 값을 채울 수 있는 역할 추가
st.setString(1, title); // 쿼리문에 (?의 인덱스. 1부터 시작, 값) 셋팅
st.setString(2, content);
st.setString(3, files);
st.setInt(4, id); //문자형에 따라 set- 바꿔주기
int result = st.executeUpdate(); // insert, update, delete(결과집합 없음). 데이터 조작.
// ResultSet rs = st.executeQuery(sql); //select(결과집합 존재)
st.close();
con.close();
}
}
삭제
<JAVA>
import java.sql.*;
public class Program2 {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
int id = 256; //256번째 게시글을 삭제
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String sql = "DELETE NOTICE WHERE ID = ?";
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection(url, "system", "1234");
PreparedStatement st = con.prepareStatement(sql);
st.setInt(1, id);
int result = st.executeUpdate();
st.close();
con.close();
}
}
'DB' 카테고리의 다른 글
JDBC Vo, Dao (0) | 2022.08.10 |
---|---|
JDBC 주요 API (0) | 2022.08.10 |
JDBC 트랜잭션 (0) | 2022.08.09 |
JDBC 기본 코드 (0) | 2022.08.09 |
SQL 롤 권한 제어 (0) | 2022.08.09 |