sp_cursorprepexec(Transact-SQL)
제출된 커서 문이나 일괄 처리에 대한 실행 계획을 컴파일한 다음 커서를 만들고 채웁니다. sp_cursorprepexec는 sp_cursorprepare와 sp_cursorexecute의 기능을 결합합니다. 이 프로시저는 TDS(Tabular Data Stream) 패킷에서 ID = 5를 지정하여 호출합니다.
구문
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)