zoukankan      html  css  js  c++  java
  • XACT_ABORT为默认为off事务发生约束性错误会继续运行,为on发生约束性错误时会rollback

    本文整理于2012-4

    IF OBJECT_ID(N't2', N'U') IS NOT NULL
    DROP TABLE t2;
    GO
    IF OBJECT_ID(N't1', N'U') IS NOT NULL
    DROP TABLE t1;
    GO
    CREATE TABLE t1
    (a INT NOT NULL PRIMARY KEY);
    CREATE TABLE t2
    (a INT NOT NULL 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 TRANSACTION;
    INSERT INTO t2 VALUES (1);
    INSERT INTO t2 VALUES (2); -- Foreign key error.
    INSERT INTO t2 VALUES (3);
    COMMIT TRANSACTION;
    GO
    SET XACT_ABORT ON;
    GO
    BEGIN TRANSACTION;
    INSERT INTO t2 VALUES (4);
    INSERT INTO t2 VALUES (5); -- Foreign key error.
    INSERT INTO t2 VALUES (6);
    COMMIT TRANSACTION;
    GO

  • 相关阅读:
    String,StringBuffer与StringBuilder的区别?
    Digui
    Digui1
    逆序
    TestOverWrite
    DemoBoxWeight
    TestSuperSub
    Cast
    TestOverWrite
    Joseph
  • 原文地址:https://www.cnblogs.com/dotagg/p/6372092.html
Copyright © 2011-2022 走看看