【发布时间】:2019-05-11 19:02:46
【问题描述】:
我正在尝试将我的数据/表/所有内容从 MySQL 6.3 CE 工作台移动到 MySQL 8.0 CE。
当我刚开始尝试时,我遇到并修复了这个错误 - Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'。
现在我有一个我无法弄清楚的新错误 - 第 1991 行的错误 1359 (HY000):触发器已存在。
我在 MySQL Workbench 8 中尝试将服务器->数据导入->自包含文件放入一个完全空的数据库时遇到此错误。我对自包含文件所做的唯一更改是删除 NO_AUTO_CREATE_USER。跑完我也试过了
SET GLOBAL log_bin_trust_function_creators = 1;
在 MySql 中。
这是确切的转储代码 -
/*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION' */ ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`%`*/ /*!50003 TRIGGER `tab`.`history_mapinvoiceitems_BEFORE_INSERT` BEFORE INSERT ON `history_mapinvoiceitems` FOR EACH ROW
BEGIN
set @lineitemid = new.lineitemid;
set @userIdInv = new.userIdinv;
END */;;
第一行是曾经给我带来问题的行,但自从删除 NO_AUTO_CREATE_USER 之后,就可以了。我还进行了搜索以查看之前是否以某种方式定义了此触发器,但这行实际上是文档中单词的第一次出现。
其他人有这个问题/解决了吗?
【问题讨论】:
标签: mysql mysql-workbench mysql-error-1064