sp_cursorprepexec(Transact-SQL)
제출된 커서 문이나 일괄 처리에 대한 실행 계획을 컴파일한 다음 커서를 만들고 채웁니다. sp_cursorprepexec는 sp_cursorprepare와 sp_cursorexecute의 기능을 결합합니다. 이 프로시저는 TDS(Tabular Data Stream) 패킷에서 ID = 5를 지정하여 호출합니다.
적용 대상: SQL Server(SQL Server 2008 - 현재 버전). |
구문
sp_cursorprepexec prepared handle OUTPUT, cursor OUTPUT, params , statement , options
[ , scrollopt [ , ccopt [ , rowcount ] ] ]
인수
prepared handle
SQL Server에서 생성하는 준비된 핸들 식별자입니다. prepared handle은 필수 항목이며 int를 반환합니다.cursor
SQL Server에서 생성하는 커서 식별자입니다. cursor는 sp_cursorfetch.params
매개 변수가 있는 문을 식별합니다. 문에서 매개 변수 표식은 변수의 params 정의로 바뀝니다. params는 ntext, nchar 또는 nvarchar 입력 값을 필요로 하는 필수 매개 변수입니다.참고
stmt에 매개 변수가 있고 scrollopt PARAMETERIZED_STMT 값이 ON이면 ntext 문자열을 입력 값으로 사용합니다.
statement
커서 결과 집합을 정의합니다. statement 매개 변수는 필수 항목이며 ntext, nchar 또는 nvarchar 입력 값을 필요로 합니다.참고
stmt 값을 지정하는 규칙은 sp_cursoropen의 규칙과 동일합니다. 단, stmt 문자열 데이터 형식은 ntext여야 합니다.
options
커서 결과 집합 열의 설명을 반환하는 선택적 매개 변수입니다. options는 다음 int 입력 값을 필요로 합니다.값
설명
0x0001
RETURN_METADATA
scrollopt
스크롤 옵션입니다. scrollopt는 다음 int 입력 값 중 하나를 필요로 하는 선택적 매개 변수입니다.값
설명
0x0001
KEYSET
0x0002
DYNAMIC
0x0004
FORWARD_ONLY
0x0008
STATIC
0x10
FAST_FORWARD
0x1000
PARAMETERIZED_STMT
0x2000
AUTO_FETCH
0x4000
AUTO_CLOSE
0x8000
CHECK_ACCEPTED_TYPES
0x10000
KEYSET_ACCEPTABLE
0x20000
DYNAMIC_ACCEPTABLE
0x40000
FORWARD_ONLY_ACCEPTABLE
0x80000
STATIC_ACCEPTABLE
0x100000
FAST_FORWARD_ACCEPTABLE
요청한 옵션이 <stmt>에서 정의한 커서에 대해 적합하지 않을 수 있으므로, 이 매개 변수는 입력과 출력 둘 다로 사용됩니다. 이러한 경우 SQL Server에서 적절한 형식을 할당하고 이 값을 수정합니다.
ccopt
동시성 제어 옵션입니다. ccopt는 다음 int 입력 값 중 하나를 필요로 하는 선택적 매개 변수입니다.값
설명
0x0001
READ_ONLY
0x0002
SCROLL_LOCKS(이전의 LOCKCC)
0x0004
OPTIMISTIC(이전의 OPTCC)
0x0008
OPTIMISTIC(이전의 OPTCCVAL)
0x2000
ALLOW_DIRECT
0x4000
UPDT_IN_PLACE
0x8000
CHECK_ACCEPTED_OPTS
0x10000
READ_ONLY_ACCEPTABLE
0x20000
SCROLL_LOCKS_ACCEPTABLE
0x40000
OPTIMISTIC_ACCEPTABLE
0x80000
OPTIMISITC_ACCEPTABLE
scrollpt와 마찬가지로 SQL Server에서는 요청된 값과 다른 값도 할당할 수 있습니다.
rowcount
AUTO_FETCH에 사용할 인출 버퍼 행 수를 나타내는 선택적 매개 변수입니다. 기본값은 20개 행입니다. rowcount는 반환 값으로 할당할 때와 입력 값으로 할당할 때 서로 다르게 동작합니다.입력 값일 때
반환 값일 때
FAST_FORWARD 커서를 사용하여 AUTO_FETCH를 지정하면 rowcount는 인출 버퍼에 배치할 행 수를 나타냅니다.
결과 집합의 행 수를 나타냅니다. scrollopt AUTO_FETCH 값을 지정하면 rowcount는 인출 버퍼로 인출된 행 수를 반환합니다.
반환 코드 값
params가 NULL 값을 반환하는 경우 문에 매개 변수가 없는 것입니다.
참고 항목
참조
sp_cursorexecute(Transact-SQL)