2

我正在使用 Ubuntu 10.04 LTS 命令行运行 mySQL 5.1.61 脚本,该脚本应该采用 .csv 文件并使用其内容来填充我之前在脚本中创建的表。

这是脚本中的内容(csv 包含三列,名字、姓氏和俱乐部):

-- Import club roster from csv.
-- Create a table to store club data.
CREATE TABLE club_roster (
    first_name VARCHAR(32),
    last_name VARCHAR(32),
    club VARCHAR(32)
)

其次是:

-- Put information from csv into table.
LOAD DATA LOCAL INFILE '/complete/path/to/file.csv'
    INTO TABLE club_roster
    FIELDS TERMINATED BY ','
    ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    IGNORE 1 LINES;

当我尝试运行它时,我收到此错误:

第 17 行的 ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 8 行的 'LOAD DATA LOCAL INFILE'/complete/path/to/file.csv' INTO TABL' 附近使用正确的语法

我的语法不正确怎么办?我已经尝试了文件路径的每种组合,包括单引号、不带单引号、整个路径、只有文件、文件结尾、没有文件结尾以及这些组合。

有任何想法吗?感谢您的帮助!

编辑:我正在使用命令

mysql < 'scriptFileName' -u root -p

然后输入我的密码来运行脚本。命令重要吗?

4

1 回答 1

1

您应该使用分号终止您的创建表命令。像这样:

CREATE TABLE club_roster (
first_name VARCHAR(32),
last_name VARCHAR(32),
club VARCHAR(32)
);
于 2017-06-12T16:40:42.377 回答