커서 유형(데이터베이스 엔진)
ODBC 및 ADO는 MicrosoftSQL Server에서 지원하는 네 가지 커서 유형을 정의합니다. DECLARE CURSOR 문이 확장되어 네 가지 Transact-SQL 커서 유형을 정의할 수 있습니다. 각각의 커서는 결과 집합의 변경 내용을 검색하는 기능 및 커서에 사용되는 메모리와 tempdb 공간 등의 리소스에 있어서 차이가 있습니다. 커서는 동일한 행을 한 번 더 인출할 때만 행의 변경 여부를 검색할 수 있습니다. 데이터 원본은 현재 인출된 행의 변경 내용을 커서에 알릴 수 없습니다. 커서의 변경 내용 검색 기능은 트랜잭션 격리 수준에 의해서도 영향을 받습니다.
SQL Server에서 지원하는 네 가지 API 서버 커서 유형은 다음과 같습니다.
정적 커서
동적 커서
정방향 전용 커서
키 집합 커서
정적 커서는 변경 내용을 거의 검색하지 못하는 반면 스크롤 시 리소스를 거의 소비하지 않습니다. 동적 커서는 모든 변경 내용을 검색하지만 스크롤 시 많은 리소스를 소비합니다. 키 집합 커서는 두 유형이 절충된 유형으로 대부분의 변경 내용을 검색하며 동적 커서에 비해 리소스를 적게 소비합니다.
데이터베이스 API 커서 모델에서는 정방향 전용 커서가 개별 커서 유형으로 간주되지만 SQL Server에서는 다릅니다. SQL Server에서는 정방향 전용 커서와 스크롤이 정적 커서, 키 집합 커서 및 동적 커서에 적용되는 옵션으로 간주됩니다.