2011-03-15 79 views
1

我有一个csv文件,我将定期通过调用cygwin + bash脚本的批处理脚本进行更新。 我想自动将csv文件上传到MySQL数据库,以便我的数据库中的表格可以定期更新csv文件。该数据库当前正在Windows Server 2003计算机上运行,​​并通过phpMyAdmin进行管理。自动将csv文件传输到MySQL

我在网上查找过,发现了一些我可以实现的部分方法,但我很困惑,应该如何放置这些源代码中的代码以及它们将如何被调用。例如,Import CSV file directly into MySQL似乎显示了如何从SQL命令行上将csv文件上传到MySQL数据库一次,但不是重复,后者正是我所需要的。

如果可能的话,我更喜欢涉及bash脚本的解决方案(与批处理和php相对)(即我更喜欢可以与更新csv文件的bash脚本集成的解决方案)。

谢谢

回答

5

你可以做这样的事情,从执行命令行的MySQL脚本:

mysql -uUsername -pPassword database_name < infile.sql 

你可以调用该命令行,并在infile.sql你可以有代码像:

LOAD DATA INFILE 'filename.csv' TO table_name 
FIELDS TERMINATED BY ',' 
+0

快速评论,TO需要INTO TABLE – quarkdown27 2011-03-23 15:40:15

0

您可以使用此文件:

# some bash script stuff 
mysql ... <<EOF 
SQL COMMANDS 
GO HERE 
EOF 
# more bash script stuff