有没有办法同时将多个csv文件导入到MySQL数据库中?某种批量导入?
我在运行MAMP服务器的Mac上。
我有185个csv文件需要导入到MySQL表中。我可以使用phpMyAdmin的导入选项卡单独导入它们,但这将花费很长时间。有人知道有没有更好的方法吗?
发布于 2011-12-17 03:25:26
使用如下的shell脚本:
#!/usr/bin/env bash
cd yourdirectory
for f in *.csv
do
mysql -e "USE yourDatabase LOAD DATA LOCAL INFILE '"$f"'INTO TABLE yourtable"
done发布于 2011-12-17 03:19:33
这里有一个小的PHP脚本:
#!/usr/bin/php
<?
mysql_connect('localhost','root','root'); // MAMP defaults
mysql_select_db('yourdatabase');
$files = glob('*.csv');
foreach($files as $file){
mysql_query("LOAD DATA INFILE '".$file."' INTO TABLE yourtable");
}有关适合您的文档的LOAD DATA INFILE选项,请参阅MySQL手册。
发布于 2011-12-17 03:29:45
您可以使用shell脚本遍历这些文件(此脚本假设它们位于当前目录中):
#!/bin/bash
for f in *.csv
do
mysql -e "load data infile '"$f"' into table my_table" -u username --password=your_password my_database
donehttps://stackoverflow.com/questions/8538995
复制相似问题