請問“BEGIN transaction”是用來干什麼的?

解决方案 »

  1.   

    BEGIN TRANSACTION
    标记一个显式本地事务的起始点。BEGIN TRANSACTION将 @@TRANCOUNT 加 1。语法
    BEGIN TRAN [ SACTION ] [ transaction_name | @tran_name_variable
        [ WITH MARK [ 'description' ] ] ]参数
    transaction_name是给事务分配的名称。transaction_name 必须遵循标识符规则,但是不允许标识符多于 32 个字符。仅在嵌套的 BEGIN...COMMIT 或 BEGIN...ROLLBACK 语句的最外语句对上使用事务名。@tran_name_variable是用户定义的、含有有效事务名称的变量的名称。必须用 char、varchar、nchar 或 nvarchar 数据类型声明该变量。WITH MARK ['description']指定在日志中标记事务。Description 是描述该标记的字符串。如果使用了 WITH MARK,则必须指定事务名。WITH MARK 允许将事务日志还原到命名标记