首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >创建更新触发器后,空字符串出现无法解释的MySQL错误#1064?

创建更新触发器后,空字符串出现无法解释的MySQL错误#1064?
EN

Stack Overflow用户
提问于 2018-08-30 03:23:10
回答 1查看 119关注 0票数 1

我在Windows8.1机器上运行MySQL,服务器版本: 10.1.34-MariaDB (在XAmpp 7.2.7-0-vc15-installer中分发),使用Google Chrome上的PhpMyadmin访问Mysql数据库,我得到了这个错误:

SQL1064-您的

语法中有一个错误;请查看与您的MariaDB服务器版本相对应的手册,了解要在第4行的'‘附近使用的正确语法

对于此create trigger语法:

代码语言:javascript
复制
DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
SET @jns = 1;
END

当我像这样修改代码时:

代码语言:javascript
复制
DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN

END

或者像这样:

代码语言:javascript
复制
DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
-- SET @jns = 1;
END

啊,真灵。

有人能帮我指出哪里出了问题吗?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-30 03:36:44

您需要使用DELIMITER指令来更改查询分隔符,因此可以在触发器定义中使用;

代码语言:javascript
复制
DELIMITER $$
DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate$$
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
SET @jns = 1;
END$$
DELIMITER ;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52084721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档