DROP TRIGGER IF EXISTS t_afterupdate_on_borrowinfo;
CREATE TRIGGER t_afterupdate_on_borrowinfo
AFTER UPDATE ON borrowinfo
FOR EACH ROW
BEGIN
DECLARE day int;
select to_days(curdate())-to_days (back_date )as day from borrowinfo;
update borrowinfo set overdue_day=days where day>0;
update borrowinfo set fines=days*0.1 where day>0;
END;
定义了一个触发器,目的是:当当前日期超过应归还日期时,把表中的过期天 置为两个日期的差值,罚款 为fines=days*0.1 、、、
执行后错误是:[Err] 1415 - Not allowed to return a result set from a trigger求指导,刚接触mysql,写的乱七八糟
CREATE TRIGGER t_afterupdate_on_borrowinfo
AFTER UPDATE ON borrowinfo
FOR EACH ROW
BEGIN
DECLARE day int;
select to_days(curdate())-to_days (back_date )as day from borrowinfo;
update borrowinfo set overdue_day=days where day>0;
update borrowinfo set fines=days*0.1 where day>0;
END;
定义了一个触发器,目的是:当当前日期超过应归还日期时,把表中的过期天 置为两个日期的差值,罚款 为fines=days*0.1 、、、
执行后错误是:[Err] 1415 - Not allowed to return a result set from a trigger求指导,刚接触mysql,写的乱七八糟
DROP TRIGGER IF EXISTS t_afterupdate_on_borrowinfo;
CREATE TRIGGER t_afterupdate_on_borrowinfo
AFTER UPDATE ON borrowinfo
FOR EACH ROW
BEGIN
DECLARE day int;
select to_days(curdate())-to_days (back_date )into day from borrowinfo;
update borrowinfo set overdue_day=day where day>0;
update borrowinfo set fines=day*0.1 where day>0;
END;
select to_days(curdate())-to_days (back_date ) as day from borrowinfo;
是没错的啊,在查询里面是可以正确执行的
Not allowed to return a result set from a trigger把这个提示复制到GOOGLE翻译中看一下是什么意思。
我还想请教一个问题
我的数据库性别类型是枚举enum,在程序中实现时,然后string‘女’插入时可以,
更新时就是Data truncated for column 'sex' at row 1;