【发布时间】:2014-01-09 02:21:04
【问题描述】:
我正在尝试编写一个 bash 脚本来删除数据库中的所有表,然后导入给定目录中的所有 csv 文件。我有几个问题:
-
使用脚本导入 1 个 csv 会出现以下错误:
ERROR 1064 (42000) at line 2: 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 'BULK INSERT paf_addresses FROM '../sql/paf-sample.csv' WITH ( FIELDTERMINATOR = ' at line 1 如何告诉 mysql 部分为设置目录中的每个文件运行
我的脚本在下面。
#!/bin/bash
detail="propertystork"
AWK=$(which awk)
GREP=$(which grep)
TABLES=$(mysql -u $detail -p$detail $detail -e 'show tables' | $AWK '{ print $1}' | $GREP -v '^Tables' )
for t in $TABLES
do
mysql -u $detail -p$detail $detail -e "drop table $t"
done
mysql -u $detail -p$detail -h localhost $detail <<-_END-OF-SCRIPT_
BULK
INSERT paf_addresses
FROM '../sql/paf-sample.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO
_END-OF-SCRIPT_
【问题讨论】: