如何在SQLite中将两列组合成另一列?

时间:2014-05-09 20:38:11

标签: mysql sql sqlite triggers

我目前在MySQL中有这个触发器。 (表1,EVENT:插入前)

set new.combinedColumn = concat(trim(new.column1), trim(new.column2))

除了在SQLite中,我如何组合这样的两列? 我尝试了多种不同的方式,并且无法获得有效的声明。

这是我到目前为止所拥有的

BEFORE INSERT ON [Table] 
FOR EACH ROW 
BEGIN 

set Column1 = column2 || column3;

END >

我收到错误

5/9/2014 2:19:34 PM: SQL Error: near "set": syntax error  <CREATE TRIGGER [insert] 

1 个答案:

答案 0 :(得分:0)

SQLite没有SET语句;触发器中允许的唯一语句是SELECT / INSERT / UPDATE / DELETE。 因此,您不能影响要在触发器中插入的值;你必须事后更新表格:

CREATE TRIGGER [...]
AFTER INSERT ON MyTable
FOR EACH ROW
BEGIN
    UPDATE MyTable
    SET Column1 = Column2 || Column3   -- or trim(...)
    WHERE rowid = NEW.rowid;
END;