Query에 문자열 넣을 때 ''를 꼭 넣어줘야함
Statement stmt = con.createStatement();
ResultSet res = stmt.excuteQuery("SELECT * FROM table_name WHERE id = '1234'");
stmt.close();
con.close();
// 동적으로 쿼리를 만들 때
String id = "1234";
ResultSet res = stmt.excuteQuery("SELECT * FROM table_name WHERE id = '" + id + "'");
DBMS 수행 순서
caceh 사용
컴파일 될 때 미리 Cache에 데이터를 저장해 놓음
그리고 실행될 때 '?'를 찾아서 바인딩해준다.
바인딩 된 다음에는 쿼리 구문 분석및 컴파일하지 않음
? 바인딩
PreparedStatement pstmt = null;
String id = "1234";
pstmt = con.prepareStatement("SELECT * FROM WHERE id = ?");
pstmt.setString(1, id);
// -> 만들어진 쿼리 : SELECT * FROM table_name WHERE id = '1234'
SQL에 들어가는 ?를 setMethod에서 값을 치환
parameter 1번째 int는 ?의 몇번째 값에 넣을 지 정하는 것
0부터 시작이 아니라 1부터 시작
setMethod |
---|
setString(int, String) |
setByte(int, byte) |
setShort(int, short) |
setInt(int, int) |
setLong(int, long) |
setFloat(int, float) |
setDouble(int, double) |
setBigDecimal(int, BigDecimal) |
setObject(int, Object) |
setArray(int, Array) |
setDate(int, Date) |
setTime(int, Time) |
setTimestamp(int, Timestamp) |
..등등.. |
프로시저 호출 전용
이거는 나중에 정리함
내가 프로시저 자체를 완벽이해 못했음...
Microdosing cannabis involves consuming small, controlled doses of THC or CBD to experience subtle therapeutic effects without intoxication. It's a popular approach for managing symptoms like anxiety, thebhangshop.co/ depression, and chronic pain while maintaining productivity and mental clarity.