在将SQL转储文件导入到MySQL Workbench时出现错误1305

9
我正在将一个 SQL 转储文件导入到 MySQL Workbench 中,但一直收到下面的错误。这是意味着其余的文件/记录没有导入,还是只有 xxx.getRates 部分没有导入? 我会错过其中的记录吗? 有人知道可能是什么原因引起的吗?

01:29:31 正在恢复 D:\Projects\CustomerName\Customer Files\xxx-2016-Oct-03.sql 运行:mysql.exe --defaults-file="c:\users\admini~1\appdata\local\temp\2\tmpru2fjn.cnf" --protocol=tcp --host=localhost --user=root --port=3306 --default-character-set=utf8 --comments --database=xxx < "D:\Projects\CustomerName\Customer Files\xxx-2016-Oct-03.sql

ERROR 1305 (42000) 第 33522 行:函数 xxx.getRates 不存在

操作失败,退出码为 1 01:34:29 导入 D:\Projects\CustomerName\Customer Files\xxx-2016-Oct-03.sql 已完成,有 1 个错误


我们需要更多信息来帮助您。在您的转储文件中,搜索“CREATE FUNCTION xxx.getRates”语句。如果找到它,请在您的答案中添加函数声明。如果没有找到它,则只需搜索所有对“xxx.getRates”的引用,并查看是否有其声明(它可能被错误地声明为“CREATE PROCEDURE”,或者根本没有声明,这将是您的错误)。 - Thomas G
1个回答

11

使用mysqldump时,必须明确要求将存储过程一同倒出。如果您手动运行,则选项为--routines。如果通过某些应用程序(如Workbench)运行,请查找其机制:

[ ] Dump Stored Procedures and Functions
[ ] Dump Events
[ ] Dump Triggers

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接