반응형
Statement와 PreparedStatement의 가장 큰 차이점은 캐시의 사용 여부이다.
SQL의 실행 단계
1) 쿼리문 분석
2) 컴파일
3) 실행
Statement
Statement의 경우 쿼리문 수행시 위의 1)~3)의 과정을 모두 거치게 된다.
따라서 매 쿼리문을 수행할 때 마다 컴파일을 해줘야하기 때문에 실행 시간이 증가하게 된다.
Prepared Statement
Prepared statement의 경우 컴파일이 이미 되어 있어 statement에 비해 실행시간이 적게 걸린다. 이러한 이점으로 인해 쿼리 반복 작업을 수행하는 경우 이를 사용하는것이 좋다.
또한 SQL injection 공격등의 문제를 보완해준다.
CS 면접 대비를 위해 아래 깃허브를 기반으로 작성 되었습니다.
github.com/JaeYeopHan/Interview_Question_for_Beginner
728x90
반응형
'Computer Science > 데이터베이스' 카테고리의 다른 글
[데이터베이스] 비 관계형 데이터베이스 (NoSQL) (0) | 2021.05.13 |
---|---|
[데이터베이스] 관계형 DB와 비관계형 DB (0) | 2021.05.13 |
[데이터베이스] 트랜잭션 (Transaction) (0) | 2021.05.13 |
[데이터베이스] 정규화 (0) | 2021.05.12 |
[데이터베이스] 인덱스 (Index) (0) | 2021.05.12 |