当前位置: 首页 > 知识库问答 >
问题:

mySQL触发器错误1175,1050

梁丘琛
2023-03-14

嗨,我正在将我的所有表从一个数据库导入到另一个数据库,但不知何故,触发器没有被导入。使用MySQL5.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);
$$

我在工作台的输出部分中得到的错误

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

知道我做错了什么吗

共有1个答案

蓬意致
2023-03-14
  • 定义子句的问题。它包含旧数据库用户信息。
  • 建议:
    1. 如果定义器信息在新数据库中无效,则忽略该信息。或者您应该按照相同的步骤进行操作,如
    2. 创建触发器
    3. 导出SQL
    4. 将Sql导入数据库新建。
 类似资料:
  • 我在WordPress数据库中编写了一个MySQL触发器&它给出了一个错误。我的触发器代码如下: 它会给出以下错误消息: 错误 SQL查询:文档 CREATE[DEFINER={user CURRENT_USER}]trigger up_trig AFTER INSERT ON每一行BEGIN DECLARE“选择DISTINCT()INTOFROM其中='panchayat_id'和=new。(

  • 问题内容: 如果我 在表上有,如何抛出错误以阻止对该表进行更新? 问题答案: 这是一种可行的技巧。这不是干净的,但看起来可能可行: 本质上,您只是尝试更新不存在的列。

  • 问题内容: 好吧,我已经研究并没有找到以下问题的解决方法`’SQL Error (1442): Can not update table’ messages’ in stored function / trigger because it is already used by statement Which invoked this stored function / trigger.`` 我的触

  • 你好 我正在Salesforce内部为trigger进行单元测试,我不断遇到一个似乎无法解决的错误,所以我希望有更多经验的人能帮助我回到正轨。我已经在Google上搜索过很多次了,我的代码结构也被弄乱了,但我找不到解决方案。 目的: 我的任务是编写一个触发器,该触发器将处理维护每个开发人员的案例排名所需的逻辑。每个开发人员都被分配了案例,这些案例可能有也可能没有由业务确定的优先级。每个开发人员在任

  • 问题内容: 我有以下触发器: 它将表格的和列相加,然后将它们除以总的综合浏览量。 每当我尝试向新闻添加新行时,都会出现以下错误: 触发对我来说似乎很简单。触发器无法运行是有原因的吗? 问题答案: 该 症状 是,你正在运行一个内部(所有行)触发-无论是修改表,这是不允许的。 就是说,如果我正确地想到了触发器的意图,则您不想更新 所有 行,而只希望更新新插入的行。您可以轻松实现 请注意,这是一个触发器

  • 本文向大家介绍MySQL触发器 Update触发Insert失败,包括了MySQL触发器 Update触发Insert失败的使用技巧和注意事项,需要的朋友参考一下 今天工作需要,想要实现将仅对状态更新的表进行历史记录显示,于是考虑在原表中建立触发器,将更新的内容同时写入另一张表 于是进行测试 执行触发器语句,报错,报错内容如下: 分析,由于访问工具HediSQL,导致无法正常创建触发器,相同语句,