mySQL触发器错误11751050

mySQL触发器错误11751050,mysql,triggers,Mysql,Triggers,嗨,我正在将我的所有表从一个数据库导入到另一个数据库,但不知为什么触发器没有被导入。使用MySQL 5.6。所以我试图从以前的数据库复制触发器语句,以便在当前数据库中创建触发器。 分隔符$$ USE `swcms`$$ CREATE DEFINER=`swcms`@`localhost` TRIGGER `swcms`.`class_lesson_trigger` AFTER DELETE ON `swcms`.`swlp4_class` FOR EACH ROW delete fr

嗨,我正在将我的所有表从一个数据库导入到另一个数据库,但不知为什么触发器没有被导入。使用MySQL 5.6。所以我试图从以前的数据库复制触发器语句,以便在当前数据库中创建触发器。 分隔符$$

USE `swcms`$$

CREATE 
DEFINER=`swcms`@`localhost` 
TRIGGER `swcms`.`class_lesson_trigger` 
AFTER DELETE ON `swcms`.`swlp4_class` 
FOR EACH ROW 
delete from swlp4_lesson where className in 
(SELECT CONCAT(old.classLv,old.className) AS className FROM swlp4_class);
$$
我在工作台的输出部分得到的错误

错误代码:1175。您正在使用安全更新模式,并尝试 更新不带WHERE的表,该表使用键列禁用safe 模式下,在“首选项->SQL编辑器->查询编辑器”中切换该选项 然后重新连接

“应用脚本”窗口中出现的错误

SQL Statement:
DROP TRIGGER IF EXISTS swcms.class_lesson_trigger
ERROR: Error when running failback script. Details follow.
ERROR 1050: Table 'swlp4_class' already exists
SQL Statement:
CREATE TABLE `swlp4_class` (
  `classID` int(11) NOT NULL auto_increment,
  `schoolID` int(11) NOT NULL,
  `educationLv` int(11) NOT NULL default '0',
  `classLv` int(11) NOT NULL,
  `className` varchar(10) NOT NULL,
  PRIMARY KEY  (`classID`),
  UNIQUE KEY `classID_UNIQUE` (`classID`),
  KEY `school_class_fk_idx` (`schoolID`),
  CONSTRAINT `school_class_fk` FOREIGN KEY (`schoolID`) REFERENCES `swlp4_school` (`schoolID`) ON DELETE CASCADE ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8
第二个错误对我来说毫无意义。我没有放弃触发器或表仍然得到这个错误

知道我做错了什么吗
  • 定义子句的问题。它包含旧数据库用户的信息
  • 建议:
  • 如果对新数据库无效,则忽略定义者信息。或者,您应该遵循如下相同的步骤
  • 创建触发器
  • 导出Sql
  • 将Sql导入DB New

  • 您好,谢谢您的回复,但swcms是新数据库,但我有几个问题,1)为什么我会遇到表已经存在这样的错误2)当您说创建触发器->导出SQL->将SQL导入新数据库时。你的意思是我需要在不创建表的情况下创建触发器吗。