커서 유형
ODBC는 Microsoft SQL Server 및 SQL Server Native Client ODBC 드라이버에서 지원되는 네 가지 커서 유형을 정의합니다. 각각의 커서는 결과 집합의 변경 내용을 검색하는 기능 및 커서에 사용되는 메모리와 tempdb 공간 등의 리소스에 있어서 차이가 있습니다. 커서는 이러한 행을 다시 인출할 때만 행 변경 내용을 검색할 수 있습니다. 데이터 원본은 현재 인출된 행의 변경 내용을 커서에 알릴 수 없습니다. 커서를 통해 변경되지 않은 내용에 대한 커서의 검색 기능은 트랜잭션 격리 수준에 의해서도 영향을 받습니다.
SQL Server지원하는 네 가지 ODBC 커서 유형은 다음과 같습니다.
정방향 전용 커서는 스크롤을 지원하지 않으며 커서의 처음부터 끝까지 순차적인 행 인출만 지원합니다.
정적 커서는 커서가 열릴 때 tempdb에 작성되며, 항상 커서가 열렸을 당시의 결과 집합을 표시합니다. 데이터 변경 내용은 반영되지 않습니다. SQL Server 정적 커서는 항상 읽기 전용입니다. 정적 서버 커서가 tempdb에 작업 테이블에 작성되므로 커서 결과 집합의 크기는 SQL Server에서 허용되는 최대 행 크기를 초과할 수 없습니다.
키 집합 커서의 멤버 자격과 결과 집합의 행 순서는 커서가 열릴 때 고정됩니다. 키가 아닌 열의 변경 내용은 커서를 통해 볼 수 있습니다.
동적 커서는 정적 커서의 반대 개념입니다. 동적 커서는 행의 모든 변경 내용을 결과 집합에 반영합니다. 따라서 인출할 때마다 결과 집합에서 행의 데이터 값, 순서 및 멤버 자격이 변경될 수 있습니다.