共用方式為


sp_cursorprepexec (Transact-SQL)

編譯提交之資料指標陳述式或批次的計畫,然後建立及擴展資料指標。 sp_cursorprepexec 會結合 sp_cursorprepare 和 sp_cursorexecute 的功能。 這個程序的叫用方式是在表格式資料流 (TDS) 封包中指定 ID = 5。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_cursorprepexec prepared handle OUTPUT, cursor OUTPUT, params , statement , options
    [ , scrollopt [ , ccopt [ , rowcount ] ] ]

引數

  • prepared handle
    這是 SQL Server 產生的已備妥「控制代碼」(Handle) 識別碼。 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 的行為會有所不同。

    當做輸入值

    當做傳回值

    當 AUTO_FETCH 與 FAST_FORWARD 資料指標一起指定時,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)