如题,比如第一个语句是用来添加表的列,第二个语句是用来插入数据的,那么如果第二个语句插入数据失败的话,第一个语句回滚到原来的状态的吗,即修改的表结构会还原吗?

解决方案 »

  1.   

    BEGIN TRAN A
    CREATE TABLE TEST(ID INT)
    INSERT TEST SELECT 'A'
    ROLLBACK TRANSELECT * FROM TEST
      

  2.   

    alter database
    create databalse
    等不能用於事務
      

  3.   

    事务中允许的 Transact-SQL 语句
    在事务中除以下语句不可使用外,其它所有 Transact-SQL 语句均可使用:ALTER DATABASE LOAD DATABASE 
    BACKUP LOG LOAD TRANSACTION 
    CREATE DATABASE RECONFIGURE 
    DISK INIT RESTORE DATABASE 
    DROP DATABASE RESTORE LOG 
    DUMP TRANSACTION UPDATE STATISTICS