Database/SQL Server
동적 쿼리와 정적 쿼리
코드블랙
2018. 5. 23. 14:23
반응형
동적쿼리
- 코드 실행 시점에 SQL 쿼리문이 동적으로 구성되고 실행되는 쿼리
- Stored Procedure를 생성할 때 필요에 따라 동적 쿼리로 작성
- 동적 쿼리 실행 SQL 문자열에 값이 바뀌는 변수를 넣어 쿼리문을 작성하게 되면 SP가 새로 캐싱되어 재사용성을 떨어트림
정적쿼리
- 변수에 문자열을 대입하여 쿼리문을 작성하는 것이 아닌 일반적으로 작성된 SQL 쿼리
- 정적 쿼리로 작성된 Stored Procedure는 새로 캐싱되지 않아 재사용성을 떨어트리지 않는다.
* 위 내용을 요약하자면 작성한 쿼리가 어떠한 상황에서도 변경되지 않는 쿼리가 정적쿼리가 될 것이고 입력값이나 특정 상황에 따라 쿼리문이 변경될 수 있는 쿼리가 동적쿼리이다.
동적쿼리의 실행
- 동적쿼리는 EXEC()함수를 사용하거나 SP_EXECUTESQL을 사용하여 실행한다.
Stored Procedure(저장 프로시저) < 동적쿼리로 작성된 SP 예제가 있으니 참고
반응형