亚洲av色香蕉一区二区三区,十四以下岁毛片带血a级,亚洲 校园 欧美 国产 另类,亚洲av日韩av一区谷露,色欲av无码一区二区三区

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

    控制在提交事務(wù)時是否關(guān)閉游標。



    語法


    SET CURSOR_CLOSE_ON_COMMIT { ON | OFF }



    注釋


    當 SET CURSOR_CLOSE_ON_COMMIT 為 ON 時,該設(shè)置遵從 SQL-92 標準,在提交或回滾時關(guān)閉任何打開的游標。當 SET CURSOR_CLOSE_ON_COMMIT 為 OFF 時,提交事務(wù)時不關(guān)閉游標。



    當 SET CURSOR_CLOSE_ON_COMMIT 為 OFF 時,ROLLBACK 語句將只關(guān)閉打開的未完全填充的異步游標。如果回滾修改,在進行修改后打開的 STATIC 或 INSENSITIVE 游標將不再反映數(shù)據(jù)的狀態(tài)。



    當 SET CURSOR_CLOSE_ON_COMMIT 為 ON 時,ROLLBACK 語句關(guān)閉所有打開的游標。當 SET CURSOR_CLOSE_ON_COMMIT 為 OFF 時,ROLLBACK 語句將關(guān)閉所有打開的游標,那些被定義為 INSENSITIVE 或 STATIC 的游標除外;但未完全填充的異步 STATIC 游標將關(guān)閉。如果回滾修改,在進行修改后打開的 STATIC 或 INSENSITIVE 游標將不再反映數(shù)據(jù)的狀態(tài)。



    SET CURSOR_CLOSE_ON_COMMIT 控制與 sp_dboptioncursor close on commit 數(shù)據(jù)庫選項相同的行為。如果 CURSOR_CLOSE_ON_COMMIT 設(shè)置為 ON 或 OFF,則在連接上使用該設(shè)置。如果未指定 SET CURSOR_CLOSE_ON_COMMIT,則應(yīng)用 sp_dboption cursor close on commit 設(shè)置。



    SQL Server ODBC 驅(qū)動程序和用于 SQL Server 的 Microsoft OLE DB 提供程序均在連接時將 CURSOR_CLOSE_ON_COMMIT 設(shè)置為 OFF。DB-Library 不自動設(shè)置 CURSOR_CLOSE_ON_COMMIT 值。



    當 SET ANSI_DEFAULTS 為 ON 時,將啟用 SET CURSOR_CLOSE_ON_COMMIT。



    SET CURSOR_CLOSE_ON_COMMIT 的設(shè)置是在執(zhí)行或運行時設(shè)置,而不是在分析時設(shè)置。



    權(quán)限


    SET CURSOR_CLOSE_ON_COMMIT 權(quán)限默認授予所有用戶。



    示例


    下例在事務(wù)中定義一個游標并嘗試在提交事務(wù)后使用該游標。



    SET NOCOUNT ON

    CREATE TABLE t1 ( a int )
    GO

    INSERT INTO t1 values (1)
    INSERT INTO t1 values (2)
    GO

    PRINT '-- SET CURSOR_CLOSE_ON_COMMIT ON'
    GO
    SET CURSOR_CLOSE_ON_COMMIT ON
    GO

    PRINT '-- BEGIN TRAN'
    BEGIN TRAN

    PRINT '-- Declare and open cursor'
    DECLARE testcursor CURSOR FOR
    SELECT a
    FROM t1

    OPEN testcursor

    PRINT '-- Commit tran'
    COMMIT TRAN

    PRINT '-- Try to use cursor'

    FETCH NEXT FROM testcursor

    CLOSE testcursor
    DEALLOCATE testcursor
    GO


    PRINT '-- SET CURSOR_CLOSE_ON_COMMIT OFF'
    GO
    SET CURSOR_CLOSE_ON_COMMIT OFF
    GO


    PRINT '-- BEGIN TRAN'
    BEGIN TRAN

    PRINT '-- Declare and open cursor'
    DECLARE testcursor CURSOR FOR
    SELECT a
    FROM t1

    OPEN testcursor

    PRINT '-- Commit tran'
    COMMIT TRAN

    PRINT '-- Try to use cursor'

    FETCH NEXT FROM testcursor

    CLOSE testcursor
    DEALLOCATE testcursor
    GO

    DROP TABLE t1
    GO
    相關(guān)文章
    本頁查看次數(shù):