有没有办法使用fluentmigrator / firebirdsql创建触发器?
当我尝试这个时
Execute.Sql(@"CREATE TRIGGER TEST_BI FOR 'Test'
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(GEN_TEST_ID,1)
END
");
没有任何反应。
我使用SET TERM ^尝试了firebird语法;但是我得到了一个错误。我也试过用脚本调用DDL语句,使用Execute.Script()但仍然没有。
有什么建议吗?谢谢!
答案 0 :(得分:0)
我对Firebird了解不多,但我猜你不能在事务中创建触发器。查看此Wiki页面,了解如何关闭交易:https://github.com/schambers/fluentmigrator/wiki/Transaction-modes-for-the-migration-runner
您需要像这样设置迁移属性:
[Migration(201304210958, TransactionBehavior.None)]