使用脚本将.csv文件加载到MySQL数据库中
问题描述:
我正在使用Ubuntu 10.04 LTS命令行来运行应该接受.csv文件并使用其内容填充我创建的表的mySQL 5.1.61脚本在脚本的前面。使用脚本将.csv文件加载到MySQL数据库中
下面是脚本什么的(对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;
当我尝试运行它,我得到这个错误:
ERROR 1064 (42000) at line 17: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LOAD DATA LOCAL INFILE '/complete/path/to/file.csv' INTO TABL' at line 8
我的语法怎么样不正确?我已经尝试了文件的所有路径组合,包括单引号,没有单引号,整个路径,只有文件,文件结尾,没有文件结尾,以及这些组合。
任何想法?感谢您的帮助!
编辑:我使用的命令
mysql < 'scriptFileName' -u root -p
,然后输入我的密码来运行该脚本。命令是否重要?
答
您应该用分号终止您的create table命令。像这样:
CREATE TABLE club_roster (
first_name VARCHAR(32),
last_name VARCHAR(32),
club VARCHAR(32)
);
你能告诉我什么是你的脚本的前16行吗?你的语法看起来是正确的,但是之前执行的任何东西似乎都失败了。 – 2017-06-12 16:39:14