精品国产亚洲一区二区三区,男女作爱在线观看免费网站,欧美的又大又长做禁片A片,97国产精品人妻无码久久久

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

    指定當(dāng) Transact-SQL 語句產(chǎn)生運(yùn)行時錯誤時,Microsoft® SQL Server™ 是否自動回滾當(dāng)前事務(wù)。



    語法


    SET XACT_ABORT { ON | OFF }



    注釋


    當(dāng) SET XACT_ABORT 為 ON 時,如果 Transact-SQL 語句產(chǎn)生運(yùn)行時錯誤,整個事務(wù)將終止并回滾。為 OFF 時,只回滾產(chǎn)生錯誤的 Transact-SQL 語句,而事務(wù)將繼續(xù)進(jìn)行處理。編譯錯誤(如語法錯誤)不受 SET XACT_ABORT 的影響。



    對于大多數(shù) OLE DB 提供程序(包括 SQL Server),隱性或顯式事務(wù)中的數(shù)據(jù)修改語句必須將 XACT_ABORT 設(shè)置為 ON。唯一不需要該選項(xiàng)的情況是提供程序支持嵌套事務(wù)時。有關(guān)更多信息,請參見分布式查詢分布式事務(wù)。



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



    示例


    下例導(dǎo)致在含有其它 Transact-SQL 語句的事務(wù)中發(fā)生違反外鍵錯誤。在第一個語句集中產(chǎn)生錯誤,但其它語句均成功執(zhí)行且事務(wù)成功提交。在第二個語句集中,SET XACT_ABORT 設(shè)置為 ON。這導(dǎo)致語句錯誤使批處理終止,并使事務(wù)回滾。



    CREATE TABLE t1 (a int PRIMARY KEY)
    CREATE TABLE t2 (a int REFERENCES t1(a))
    GO
    INSERT INTO t1 VALUES (1)
    INSERT INTO t1 VALUES (3)
    INSERT INTO t1 VALUES (4)
    INSERT INTO t1 VALUES (6)
    GO
    SET XACT_ABORT OFF
    GO
    BEGIN TRAN
    INSERT INTO t2 VALUES (1)
    INSERT INTO t2 VALUES (2) /* Foreign key error */
    INSERT INTO t2 VALUES (3)
    COMMIT TRAN
    GO

    SET XACT_ABORT ON
    GO

    BEGIN TRAN
    INSERT INTO t2 VALUES (4)
    INSERT INTO t2 VALUES (5) /* Foreign key error */
    INSERT INTO t2 VALUES (6)
    COMMIT TRAN
    GO

    /* Select shows only keys 1 and 3 added.
      Key 2 insert failed and was rolled back, but
      XACT_ABORT was OFF and rest of transaction
      succeeded.
      Key 5 insert error with XACT_ABORT ON caused
      all of the second transaction to roll back. */

    SELECT *
    FROM t2
    GO

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