这是一个非常具体的问题。我一直在努力弄清楚所需的确切步骤,但我想不出任何可行的方法。
每当“任务”表中的新任务插入数据库时,我需要一个触发器将新记录插入到名为 Records 的表中。我需要为“项目”表中符合任务条件的每个未清项目插入一条记录。我对声明的伪代码/尝试如下。
CREATE TRIGGER update_item_records ON INSERT INTO tasks
BEGIN
SELECT item in ITEMS WHERE item.type=new.type AND item.program=new.program
....now insert into records - this is where I'm confused
INSERT INTO records record.item = item.id, record.program = new.program,
record.task=new.id
END
最佳答案
触发器中 SELECT
语句的结果将被忽略。
但是,INSERT
命令 accepts a SELECT
query as source :
INSERT INTO records(item, program, task)
SELECT id, new.program, new.id
FROM items
WHERE type = new.type
AND program = new.program;
关于Android SQlite 触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15643610/