일반적인 스토어드 프로시져를 사용했을 경우 분명히 스토어드 프로시져가
LINQ 보다 빠릅니다.
제가 궁금한 부분은 동적인 SQL문의 스토어드 프로시져를 사용했을 경우인데요
예를 들어
declare @sql varchar(5000)
set @sql = 'select ...'
if 조건
@sql = ' where ...'
이런식으로 스토어드 프로시져 내부에서 SQL문을 동적으로 구성했을 때도
스토어드가 빠른지 의문입니다.
스토어드 프로시져가 빠른 이유는 DB서버 내 케쉬에 SQL문을 이미 담고 있기 때문에
빠른 것으로 알고 있는데 저렇게 동적인 SQL문은 케쉬에 담고 말고 할게 없을 것 같습니다.
이럴 경우에는 스토어드 프로시져를 사용하나 LINQ를 사용하나 처리속도가 거의 없을까요?
물론 LINQ의 경우 SQL 문 자체를 DB서버로 보내야하기 때문에 그 차이는 있겠지만
이 정도의 사소함은 무시한다면 어떨지 궁금합니다.
|