日期:2014-05-17  浏览次数:20663 次

启动事务时,tran或者transation关键字 可以省略吗
就是将 begin tran tran_name
省略关键字和别名,直接写一个begin:
begin


------解决方案--------------------
begin

end
是逻辑包住代码,没有什么事务可言,你可以直接用
begin tran,而不一定要写tran_name
------解决方案--------------------
除非你有多个tran,才需要写,
------解决方案--------------------
 如果你的一个处理逻辑模块中只有一个事务,begin tran tran_name 中的别名tran_name是可以省略的(即写成begin tran),但是tran是不可以省略的 。。。
仅仅有begin 和end 是不可以的,begin 和end 包含的是一段逻辑模块,这里头如果你不加事务,SQL server也会默认加一些事务,但是是非常小的,比如SQL server默认会给单个的update、delete语句加事务,但是这个是粒度非常小的事务,应该不能满足你的业务逻辑的
------解决方案--------------------
 这个不能省,就如同drop table 表名一样,你如果把table省略,就会报错
------解决方案--------------------
关键字不能省