中文字幕天天躁日日躁狠狠躁,最近中文字幕大全免费版在线,最近2019免费中文字幕视频三,亚洲精品无码你懂的,亚洲国产精品成人精品小说

  • 相關(guān)軟件
    >CURSOR_STATUS 創(chuàng)建者:webmaster 更新時(shí)間:2006-02-16 15:51

    這是一個(gè)標(biāo)量函數(shù),該函數(shù)允許存儲(chǔ)過(guò)程的調(diào)用方確定針對(duì)一個(gè)給定參數(shù),該過(guò)程是否返回游標(biāo)和結(jié)果集。



    語(yǔ)法


    CURSOR_STATUS

        (

            { 'local' , 'cursor_name' }

            | { 'global' , 'cursor_name' }

            | { 'variable' , 'cursor_variable' }

        )



    參數(shù)


    'local'



    指定一個(gè)常量,該常量表明游標(biāo)的源是一個(gè)本地游標(biāo)名。



    'cursor_name'



    游標(biāo)名。游標(biāo)名必須符合標(biāo)識(shí)符的規(guī)則。



    'global'



    指定一個(gè)常量,該常量表明游標(biāo)的源是一個(gè)全局游標(biāo)名。



    'variable'



    指定一個(gè)常量,該常量表明游標(biāo)的源是一個(gè)本地變量。



    'cursor_variable'



    游標(biāo)變量的名稱。必須使用 cursor 數(shù)據(jù)類型定義游標(biāo)變量。



    返回類型


    smallint








































    返回值

    游標(biāo)名


    游標(biāo)變量
    1游標(biāo)的結(jié)果集至少有一行,并且:

    對(duì)于不感知游標(biāo)和鍵集游標(biāo),結(jié)果集至少有一行。



    對(duì)于動(dòng)態(tài)游標(biāo),結(jié)果集可以有零行、一行或多行。


    分配給該變量的游標(biāo)已經(jīng)打開(kāi),并且:

    對(duì)于不感知游標(biāo)和鍵集游標(biāo),結(jié)果集至少有一行。



    對(duì)于動(dòng)態(tài)游標(biāo),結(jié)果集可以有零行、一行或多行。


    0游標(biāo)的結(jié)果集為空。*分配給該變量的游標(biāo)已經(jīng)打開(kāi),然而結(jié)果集肯定為空。*
    -1游標(biāo)被關(guān)閉。分配給該變量的游標(biāo)被關(guān)閉。
    -2不可用。可以是:

    先前調(diào)用的過(guò)程并沒(méi)有將游標(biāo)指派給 OUTPUT 變量。



    先前調(diào)用的過(guò)程給 OUTPUT 變量指派了游標(biāo),然而在過(guò)程結(jié)束時(shí),游標(biāo)處于關(guān)閉狀態(tài)。因此,游標(biāo)被釋放,并且沒(méi)有返回給調(diào)用過(guò)程。



    沒(méi)有將游標(biāo)指派給已聲明的游標(biāo)變量。


    -3帶有指定名稱的游標(biāo)不存在。帶有指定名稱的游標(biāo)變量并不存在,或者即使存在這樣一個(gè)游標(biāo)變量,但并沒(méi)有給它分配游標(biāo)。



    * 動(dòng)態(tài)游標(biāo)從不返回這個(gè)結(jié)果。



    示例


    下面的示例創(chuàng)建一個(gè)名為 lake_list 的過(guò)程,并將執(zhí)行 lake_list 的輸出結(jié)果用作 CURSOR_STATUS 的檢驗(yàn)。



    說(shuō)明  本示例依賴于一個(gè)名為 check_authority 的過(guò)程,該過(guò)程尚未創(chuàng)建。



    USE pubs
    IF EXISTS (SELECT name FROM sysobjects
        WHERE name = 'lake_list' AND type = 'P')
      DROP PROCEDURE lake_list
    GO
    CREATE PROCEDURE lake_list
      ( @region varchar(30),
      @size integer,
      @lake_list_cursor CURSOR VARYING OUTPUT )
    AS
    BEGIN
      DECLARE @ok SMALLINT
      EXECUTE check_authority @region, username, @ok OUTPUT
      IF @ok = 1
        BEGIN
        SET @lake_list_cursor =CURSOR LOCAL SCROLL FOR
          SELECT name, lat, long, size, boat_launch, cost
          FROM lake_inventory
          WHERE locale = @region AND area >= @size
          ORDER BY name
        OPEN @lake_list_cursor
        END
    END
    DECLARE @my_lakes_cursor CURSOR
    DECLARE @my_region char(30)
    SET @my_region = 'Northern Ontario'
    EXECUTE lake_list @my_region, 500, @my_lakes_cursor OUTPUT
    IF Cursor_Status('variable', '@my_lakes_cursor') <= 0
      BEGIN
      /* Some code to tell the user that there is no list of
      lakes for him/her */
      END
    ELSE
      BEGIN
        FETCH @my_lakes_cursor INTO -- Destination here
        -- Continue with other code here.
    END
    相關(guān)文章
    本頁(yè)查看次數(shù):