【发布时间】:2015-04-21 05:09:03
【问题描述】:
以下代码导致 SQLite 出现语法错误。 我想这一定很简单,但我看不到。
我有两个表格、页面和项目,通过文本代码链接。当此代码在 pages 表中更改时,我也希望它在 items 表中进行更改。
SQLite 版本比较老了,3.7.7.1,但是我在版本历史中没见过这样的问题。这发生在使用 PHP 5.3.1 的 Windows 上。
CREATE TABLE IF NOT EXISTS "efpage" ( "pageid" integer NOT NULL PRIMARY KEY, "psite" text NULL, "pgcode" text NULL );
CREATE TABLE IF NOT EXISTS "efitem" ( "itemid" integer NULL PRIMARY KEY , "isite" text NULL, "ititle" text NULL, "inpage" text NULL);
DROP TRIGGER IF EXISTS update_pagecode;
CREATE TRIGGER update_pagecode AFTER UPDATE OF pgcode ON efpage
BEGIN
UPDATE efitem SET inpage = new.pgcode WHERE inpage = old.pgcode;
END;
产生的错误是 “pgcode”附近的错误:语法错误。
尝试不同的东西,我看到语法错误在“old.pgcode;”之后
【问题讨论】:
-
为我工作 (3.8.9)。