我使用sql 2012 express在两台不同的机器上部署了clr触发器,并且行为是不同的。一个(win 8 pro)具有当前活动状态,另一个(win 7 pro)已中止。 Msdtc在每台计算机上启动。 这是我的代码示例
public partial class Triggers
{
[Microsoft.SqlServer.Server.SqlTrigger(Name = "WTrigger", Target = "Wyp", Event = "FOR INSERT, UPDATE, DELETE")]
public static void WTrigger ()
{
Transaction trans = Transaction.Current; // trans has status aborted
SqlContext.Pipe.Send("Update happen in test table");
}
}
可以解释为什么交易中止,没有触发任何操作?