在插入Informix之前,创建一个触发器以更改值

时间:2018-07-26 08:02:28

标签: sql informix spl

我们有一个带有日期字段的表。还有一些我们无法修改的旧应用程序,这些应用程序的日期字段使用字符串(“ yyyy-mm-dd”)插入(是的,SQLInjectiónParty!)。现在需要将该字段更改为Datetime年至第二年。这会使旧的应用程序失败。

create table test(
    testDate DATETIME YEAR TO SECOND
);

insert into  test values("2018-12-12")

Error: A field in a datetime or interval value is incorrect or an illegal operation specified on datetime field.

如果字符串的长度为10,我们试图触发一个将“ 00:00:00”连接到字符串的触发器。这应该可以解决问题。

那是可能的吗? 在我看来,如果我使用插入前触发器,则无法修改插入值。但是,如果我改用每行,则不会启动触发器,因为会首先引发错误。

有什么想法吗?

0 个答案:

没有答案