我有:
create table myT(
p1 float(6,2),
p2 float(6,2),
p3 float(6,2),
date timestamp not null DEFAULT CURRENT_TIMESTAMP,
primary key(date)
);
并触发:
CREATE TRIGGER sum BEFORE INSERT ON myT FOR EACH ROW SET @p3= @p2+@p1;
将此插入:
INSERT INTO `myT`(`p1`,`p2`) VALUES (10, 2);
我在p3中得到一个空值,而我期望12
答案 0 :(得分:0)
我认为这是你想要的触发器:
DELIMITER $$
CREATE TRIGGER sum BEFORE INSERT ON myT
FOR EACH ROW
SET NEW.p3 = NEW.p2 + NEW.p1;
DELIMITER ;
此触发器中似乎不需要用户变量。