다음을 통해 공유


sp_cursorprepexec(Transact-SQL)

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

적용 대상: SQL Server(SQL Server 2008 - 현재 버전).

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

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_cursoropen(Transact-SQL)

sp_cursorexecute(Transact-SQL)

sp_cursorprepare(Transact-SQL)

sp_cursorfetch(Transact-SQL)

시스템 저장 프로시저(Transact-SQL)