在mysql数据库中导入excel数据
我有一个excel文件,大约有5000行要插入我的一个mysql数据库表中,有人能给出快速而肮脏的解决方案吗?谢谢,又快又脏: 将计算列放入Excel以生成“插入”语句。然后将所有句子复制粘贴到MySQL命令解释器中 您的单元格应具有如下公式:在mysql数据库中导入excel数据,mysql,excel,Mysql,Excel,我有一个excel文件,大约有5000行要插入我的一个mysql数据库表中,有人能给出快速而肮脏的解决方案吗?谢谢,又快又脏: 将计算列放入Excel以生成“插入”语句。然后将所有句子复制粘贴到MySQL命令解释器中 您的单元格应具有如下公式: =CONCATENATE("insert into your table (col1, col2) values (", A1, ", ", B1, ");") 然后在所有行上复制公式,就可以得到脚本了 其他快速和肮脏: 使用ACCESS打开Excel
=CONCATENATE("insert into your table (col1, col2) values (", A1, ", ", B1, ");")
然后在所有行上复制公式,就可以得到脚本了
其他快速和肮脏:
使用ACCESS打开Excel文件,然后使用“导出到ODBC”功能将数据放入MySQL。这有点复杂,因为您必须设置ODBC驱动程序和连接,但如果您计划定期这样做,它可能是一个更好的选择。另存为CSV;使用要导入的图形mySQL客户端的“导入文本文件”功能。请查看:
$file = fopen("myfile.csv", "r");
$sql = "INSERT INTO table(field1, field2, field3...";
while(!feof($file))
{
$fields = explode(',', fgets($file));
$sql .= "VALUES("
foreach($fields as $field)
{
$sql .= "$field, ";
}
$sql = substr($sql, 0, -2);
$sql .= "), ";
}
$sql = substr($sql, 0, -2);
fclose($file);
mysql_query($sql);
除非你有一些额外的工具,否则没有捷径可走 您可以编写excel宏并通过ODBC传输数据 您可以将其导出为CSV,然后使用PHPMyAdmin导入 您可以导出CSV,然后编写awk脚本将CSV数据转换为一组insert语句 您可以使用(在此处插入所选语言)
你有ODBC链接吗?你有编程语言吗?PHPMyAdmin?其他一些MySQL工具?您可以很好地控制这种方法(包括处理自动字段)。很好的一个!有没有可能通过指定一个开始和结束列来自动生成列语句,而不需要太多麻烦?@Pekka问得好。不幸的是,我不知道答案。我的猜测可能是肯定的。是的,这可能是有可能的,但只需要非常非常大量的代码。我尝试过这样的解决方案,但无法导入大于255个字符的文本。这似乎与或非常相似