CommandType.StoredProcedure와 저장 프로시저 실행의 CommandType.Text 비교
CommandType.StoredProcedure를 사용하여 C#에서 저장 프로시저를 실행하면 다음과 같은 질문이 표시됩니다. 필요한? CommandType.Text를 사용하는 것보다 어떤 이점이 있습니까? 이 문서에서는 두 방법의 장점을 조사합니다.
기본 매개 변수화
블로그 연구에 따르면 SQL Server는 CommandType.Text를 사용할 때 sp_executesql의 문을 자동으로 매개 변수화합니다. 이와 대조적으로 CommandType.StoredProcedure는 프로시저를 명시적으로 매개 변수화하여 데이터베이스의 작업 부하를 줄여 성능을 향상시킵니다.
테스트 및 결과
SQL Server Profiler를 사용하여 저장 프로시저를 테스트했습니다. 두 CommandType 변형을 모두 사용하여 호출됩니다. 두 경우 모두 RPC 호출이 생성되었습니다.
CommandType.Text
exec sp_executesql N'dbo.Test',N'@Text1 nvarchar(5),@Text2 nvarchar(5)',@Text1=N'Text1',@Text2=N'Text2'
CommandType.StoredProcedure
exec dbo.Test @Text1=N'Text1',@Text2=N'Text2'
결론
따라서 최고의 성능과 매개변수 유연성을 얻으려면 C#에서 저장 프로시저를 실행할 때 CommandType.StoredProcedure를 사용하세요.
위 내용은 CommandType.StoredProcedure 또는 CommandType.Text: C#의 저장 프로시저 실행에 더 나은 것은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!