Mysql:如何从其他SQL脚本文件中调用SQL脚本文件?

25
假设我编写了一个名为Table_ABC.sql的脚本,用于创建表ABC。我为每个所需的表创建了许多这样的脚本。现在我想编写一个脚本,按顺序调用所有这些脚本文件,因此我需要另一个脚本文件createTables.sql。Mysql提供了从"mysql" shell应用程序执行脚本文件的选项,但找不到类似于 exec c:/myscripts/mytable.sql 的命令。请告诉我是否有任何命令可以在最新的mysql版本中编写在SQL脚本本身中以调用其他命令或相同的替代方法。
谢谢

我认为有某些原因,你不能只将所有的SQL文件放到一个文件中并运行它? - Jason McCreary
3
我正在为每个表格创建一个脚本,以更好地组织和管理它们。 - Maddy.Shik
1个回答

26

您可以使用source命令。因此,您的脚本将是以下内容:

use your_db;
source script/s1.sql;
source script/s2.sql;
-- so on, so forth

4
我已经浏览了这个页面。源命令在 MySQL 应用程序上运行,但我想在 MySQL Workbench 的查询分析器工具上运行它。谢谢。 - Maddy.Shik
5
在包含这些命令的文件中,是否可以使用相对路径来指定脚本文件的位置? - Maddy.Shik
20
MySQL Workbench 显示错误 "SOURCE (source) is not valid input at this position"。这个错误提示表示在当前位置输入的 "SOURCE (source)" 命令不是有效的输入。 - Pawan
这个错误和这个问题中的错误是一样的 https://stackoverflow.com/questions/45227599/mysql-syntax-error-source-source-is-not-valid-input-at-this-position - undefined

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