所以我的数据库中有两个表:'test1' 和'cities'。我在 test1 中有以下列:'Origin'、'OriginIndex'(我只提到相关的)和城市:'city'、'value'(同样,仅相关的)。'cities' 表在 'city' 列中有 5000 个城市,并且在对应于每个城市(如伦敦、巴黎等)的 'value' 列中具有双值(如 0.990、0.345、0.457、1.566)。
因此,假设用户在“test1”表的“Origin”列中输入了“London”。在“城市”表中,伦敦“城市”的“价值”为 1.555。现在,我试图在 phpmyadmin 中触发一个触发器,该触发器将检查“Origin”是否=“city”,如果是,则在插入“London”后,相应的“value”将存储在“OriginIndex”中。我创建了这样的触发器:
CREATE TRIGGER t1
AFTER INSERT ON test1
FOR EACH ROW
BEGIN
UPDATE test1 a, cities b SET a.OriginIndex = b.value WHERE a.Origin = b.city;
END
但是,这并不是每次我在我的 php 网站(localhost)上的 'test1' 表的 'Origin' 列中输入时都将“值”存储到 'OriginIndex' 中。任何人都可以找出错误吗?任何建议或提示将不胜感激!=]