3

我很困惑。从我在网上看到的参考资料中,执行文本文件脚本的命令是这样的:

mysql> --user=root --password=admin --database=zero <query.sql

但是,当我运行它时,命令行说 mySQL 语法有错误(错误 1064)。我将 query.sql 脚本文件保存在 C:program files...\MYSQL\MYSQL Server5.1.. 中(无论哪个文件夹目录包含 mySQL 命令行终端 .exe)

然后我这样做了:

 mysql> USE db1 \g
 mysql> source <query.sql \g

它也不起作用;命令行给了我同样的错误。我拥有的 mySQL 版本与我见过的其他版本不同。如您所见,您必须在每个查询的末尾添加 '\g'。

请帮忙,如果描述不是很清楚,请告诉我..thx

编辑:所以这是我在 query.sql 中的代码:

CREATE TABLE IF NOT EXISTS 'db1'(
'id' int(255) NOT NULL auto_increment,
'date' date NOT NULL,
'title' varchar(255) NOT NULL,
'introtext' text NOT NULL,
'maintext' text NOT NULL,
PRIMARY KEY ('id')
)
4

3 回答 3

5

您可以使用以下命令从客户端运行 SQL 文件:

\. query.sql

或者,如果您尚未在客户端中,则可以从命令行使用以下命令:

mysql --user=root --password=admin --database=zero < query.sql
于 2011-05-22T21:57:30.070 回答
2

删除引号:'db1'. 在必要时使用反引号,例如用于date从 type 中识别它的字段date;并在语句末尾添加一个:

CREATE TABLE IF NOT EXISTS db1(
  id int(255) NOT NULL auto_increment,
  `date` date NOT NULL,
  title varchar(255) NOT NULL,
  introtext text NOT NULL,
  maintext text NOT NULL,
  PRIMARY KEY (id)
) ;
于 2011-05-22T22:17:01.490 回答
0

您需要指定数据库,因此如下语句:-

使用(数据库名称)

所以上面将 (DATABASE NAME) 替换为数据库的名称

于 2016-10-03T20:43:32.310 回答