在firebird中使用“with check option”时,“列的不适当的自引用”

时间:2013-12-10 21:35:06

标签: sql database views firebird

我们目前正在使用视图,我必须创建一个允许我们操作和插入数据的视图。但是,该视图仅显示指定年份的数据,因此应仅允许插入和操作此类数据。通过使用with check option,我们可以确保这一点。

我原来的方法如下:

create view FOO as
select * from BAR
where extract(year from BAR.SOME_DATE) = '2011' with check option;
然而,这不会起作用。我收到以下错误:“SQL错误代码= -203。列的不适当的自引用。”

另一方面,使用时:

create view FOO as
select * from BAR
where BAR.SOME_DATE between '2011-01-01' and '2011-12-31' with check option; 

它会起作用。

如果重要,我正在使用Firebird 2.5。

我完全不知道为什么会这样,所以我很感激每一个帮助。提前谢谢!

1 个答案:

答案 0 :(得分:1)

这是bug,它将在2.5.3版本中修复。