关于mysql trigger调用udf问题
一个文件student.sql里内容
use yy;
DELIMITER |
DROP TRIGGER IF EXISTS student_trigger;
CREATE TRIGGER student_trigger
AFTER INSERT ON student
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM student WHERE id = NEW.id LIMIT 1);
SET @tt_con = (SELECT redis_connect("10.1.60.125",6379));
SET @tt_resu = (SELECT redis_pipe(CONCAT("SET ",NEW.id," ",@tt_json,"\r\n")));
END |
DELIMITER ;
另一个文件student_new.sql内容
use yy;
DELIMITER |
DROP TRIGGER IF EXISTS student_update_trigger;
CREATE TRIGGER student_update_trigger AFTER UPDATE ON student;
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM student WHERE id = NEW.id LIMIT 1);
SET @tt_con = (SELECT redis_connect("10.1.60.125",6379));
SET @tt_resu = (SELECT redis_pipe(CONCAT("SET ",NEW.id," ",@tt_json,"\r\n")));
END |
DELIMITER;
导入student_new.sql成功,导入student_new.sql提示:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM studen' at line 1
请大家帮忙看下,两个触发器操作是一样的,为什么一个成功一个不成功,看了n久都没看出问题。
use yy;
DELIMITER |
DROP TRIGGER IF EXISTS student_trigger;
CREATE TRIGGER student_trigger
AFTER INSERT ON student
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM student WHERE id = NEW.id LIMIT 1);
SET @tt_con = (SELECT redis_connect("10.1.60.125",6379));
SET @tt_resu = (SELECT redis_pipe(CONCAT("SET ",NEW.id," ",@tt_json,"\r\n")));
END |
DELIMITER ;
另一个文件student_new.sql内容
use yy;
DELIMITER |
DROP TRIGGER IF EXISTS student_update_trigger;
CREATE TRIGGER student_update_trigger AFTER UPDATE ON student;
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM student WHERE id = NEW.id LIMIT 1);
SET @tt_con = (SELECT redis_connect("10.1.60.125",6379));
SET @tt_resu = (SELECT redis_pipe(CONCAT("SET ",NEW.id," ",@tt_json,"\r\n")));
END |
DELIMITER;
导入student_new.sql成功,导入student_new.sql提示:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
FOR EACH ROW BEGIN
SET @tt_json = (SELECT json_object(id,name) FROM studen' at line 1
请大家帮忙看下,两个触发器操作是一样的,为什么一个成功一个不成功,看了n久都没看出问题。
...全文
相关推荐
[] - 2023-02-26 MySQL 数据同步到 Redis 缓存, so Easy -.pdf
通过在MySQL中设置触发器(Trigger)和用户自定义函数(UDF),可以在数据变更时自动触发同步过程。**过程描述:**1.
用mysql触发器自动更新memcache的实现代码
**安装MySQL 5.1**:确保你的环境中安装了MySQL 5.1或更高版本,因为触发器和UDF功能是在这个版本引入的。3.
mysql的使用和练习解答+ppt
在“mysql的使用和练习解答+ppt”中,可能还涵盖了存储过程(Stored Procedure)、触发器(Trigger)、视图(View)和用户定义的函数(UDF)等高级特性。
mysql 数据库 程序员面试题
- 用户自定义函数(UDF):扩展MySQL的功能。8. **触发器(Trigger)** - 自动执行的SQL代码,响应特定的表事件(INSERT,UPDATE,DELETE)。9.
MySQL数据库使用规范
**其他注意事项:** - 禁止使用外键、临时表、视图、UDF、routine、trigger等特性。 - 不建议使用enum、set、blob、text等字段类型。#### 三、安全规范1.


疑难问题
