如何在MySQL Workbench 6.2查询中运行.sql文件?

时间:2014-10-11 19:05:10

标签: mysql sql mysql-workbench

我正在使用MySQL Workbench 6.2 [Windows7],我想用我的所有步骤创建一个脚本。在这些步骤中,我有一系列.sql文件存储在我的计算机上,用于创建和填充表。 我想从查询选项卡运行这些文件,但每次我使用此命令时:

来源C:/ Users / [用户名] /Desktop/sampdb/create_president.sql;

我收到错误1064,其中说

  

“错误代码:1064。您的错误   SQL语法;查看与MySQL服务器对应的手册   在'mysql>附近使用正确语法的版本资源   C:/ Users / [username] /Desktop/sampdb/create_president.sql at line 1“

MySQL nested script nightmare

谁能告诉我我做错了什么?如何在MySQL Workbench脚本中引用.sql文件?

我应该在MySQL Workbench而不是source中使用哪些代码?我试过LOAD DATA LOCAL INFILE 'C:/Users/[username]/Desktop/sampdb/create_president.sql';但它也没用。知道什么可能是错的吗?

*仅为了解更多信息,create_president.sql包含以下代码:

DROP TABLE IF EXISTS president;
#@ _CREATE_TABLE_
CREATE TABLE president
(
  last_name  VARCHAR(15) NOT NULL,
  first_name VARCHAR(15) NOT NULL,
  suffix     VARCHAR(5) NULL,
  city       VARCHAR(20) NOT NULL,
  state      VARCHAR(2) NOT NULL,
  birth      DATE NOT NULL,
  death      DATE NULL
);

3 个答案:

答案 0 :(得分:3)

source命令是MySQL Workbench不支持的纯(命令行)客户端特定命令。只需加载sql文件即可运行它。

更新(在您编辑问题后)

您的SQL文件包含DDL。 LOAD DATA INFILE但只导入DML。 MySQL命令行客户端的SOURCE命令没有替代品。然而,在我们的待办事项列表中支持MySQL Workbench。

答案 1 :(得分:3)

您可以在 MySqlWorkBench 上运行脚本,如下所示:

从文件菜单中选择“运行SQL脚本”。

enter image description here

然后,在弹出窗口中,从您的计算机上打开脚本。

enter image description here

然后选择要执行此脚本的模式名称。 (之前我使用命令“create database REGISTRY_LOCAL1;”创建了模式)

enter image description here

然后执行脚本。

enter image description here

答案 2 :(得分:0)

只需删除引号和分号即可。命令源不是SQL,它不喜欢引号和分号。 :)

source /Users/[username]/Documents/company/department.sql