首页 > 解决方案 > 触发自动将元组添加到关系

问题描述

我正在尝试在 SQLITE 上创建一个触发器,以便在将某些内容添加到某个表时自动将元组添加到另一个表,但首先,我想检查我添加的内容是否属于另一个第三个表。

这是我的触发器:

DROP TRIGGER IF EXISTS atualizaBibliotecas;

CREATE TRIGGER atualizaBibliotecas
AFTER INSERT ON FoiComprado
FOR EACH ROW
BEGIN
    SELECT CASE 
    WHEN 
    (
        SELECT count(*)
        FROM Album 
        WHERE idItem = NEW.idItem
    ) <> 0
    THEN INSERT INTO Possui(idItem, email, dataAquisicao) VALUES(11,'aaaa@bbbb.com', '2019-05-14');
END;

这是我收到的错误:

Error: near line 8: near "INSERT": syntax error

第 8 行:

CREATE TRIGGER atualizaBibliotecas

标签: sqlsqliterelational-database

解决方案


我相信你想要:-

CREATE TRIGGER atualizaBibliotecas
AFTER INSERT ON FoiComprado
FOR EACH ROW
   WHEN 
    (
        SELECT count(*)
        FROM Album 
        WHERE idItem = NEW.idItem
    ) <> 0
    BEGIN
    INSERT INTO Possui(idItem, email, dataAquisicao) VALUES(11,'aaaa@bbbb.com', '2019-05-14');
END;

推荐阅读