将日期添加 7 天的触发器

A trigger to add 7 days to a date

我有一列 start_week 和另一列 end_week。我在设置 start_week set end_week in + 7days 的地方创建了一个触发器,但它无法正常工作。

这是我的代码:

CREATE TRIGGER T_fin_semana UPDATE of fin_semana on fb_clients 
BEGIN
  UPDATE fb_clients SET fin_semana = 'select date('now','+6 day'), WHERE nombre=old.nombre; 
END;

错误:

Execution finished with errors.
Result: near "select": syntax error
At line 1:
CREATE TRIGGER T_fin_semana UPDATE of fin_semana on fb_clients 
BEGIN
  UPDATE fb_clients SET fin_semana = select

我相信你想要:-

CREATE TRIGGER T_fin_semana AFTER UPDATE OF fin_semana ON fb_clients 
    BEGIN
     UPDATE fb_clients SET fin_semana = date('now','+6 day') WHERE nombre=old.nombre; 
     END;

这就是你需要的

  1. 指定其中之一:-
  • BEFORE
  • AFTER
  • INSTEAD OF

在触发操作之前 (UPDATE INSERT 或 DELETE),以及

  1. 更正更新中的语法错误,如上所示。
  • 您可以使用 (SELECT date('now','+6 day')),但不需要 SELECT,因为表达式本身就可以。

测试使用:-

/* Test */
INSERT INTO fb_clients (fin_semana) VALUES('not set');
UPDATE fb_clients SET fin_semana = 'updated';
SELECT * FROM fb_clients;

结果是:-