【发布时间】:2023-04-01 05:13:01
【问题描述】:
我有很多 excel/CSV 文件需要加载到我在 MySQL Workbench 中的数据库中(我在 Mac OS X 上)。我四处寻找一个好的演练或教程,但我没有看到任何清楚地解释如何将 CSV 加载到 MySQL Workbench 中的内容......谁能帮忙?
【问题讨论】:
标签: mysql excel csv mysql-workbench
我有很多 excel/CSV 文件需要加载到我在 MySQL Workbench 中的数据库中(我在 Mac OS X 上)。我四处寻找一个好的演练或教程,但我没有看到任何清楚地解释如何将 CSV 加载到 MySQL Workbench 中的内容......谁能帮忙?
【问题讨论】:
标签: mysql excel csv mysql-workbench
您是否尝试将 csv 文件加载到 MySQL 表中?您可以使用LOAD DATA LOCAL INFILE 命令轻松做到这一点。
例子:
LOAD DATA LOCAL INFILE '/data.csv' INTO TABLE my_table FIELDS TERMINATED BY ','
您应该能够从 MySQL 的任何界面输入该命令。我假设工作台可以让您执行 sql 查询。
【讨论】:
LINES TERMINATED BY '\r\n' 或 LINES TERMINATED BY '\r'。如果您知道行分隔符,只需添加 LINES TERMINATED BY '<character>'
\r。谢谢你。
必须是Workbench吗?
你可以使用其他 MySQL bins 吗?
这是一个例子: 创建数据库
创建表
load data local infile '/path/whatever.csv' into table dbName.tableName fields terminated by ',' enclosed by '"' lines terminated by '\n';
【讨论】:
或者您可以使用 Excel 使用要加载的文件列表生成大量 LOAD DATA INFILE 语句。
说,你可以:
将文件名放在Excel的A列中
在 B1 单元格中放置这样的公式:
="LOAD DATA LOCAL INFILE 'path/"&A1&"' INTO TABLE tablename FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';"
根据需要将 B1 单元格复制并粘贴到 B 列单元格中。
因此,您将在 Excel 的 B 列中拥有 LOAD DATA 语句,并且可以将它们复制并粘贴到 mysql 命令行中。
也许对于脚本的高级用户来说不太方便,但对于 MS Excel 的高级用户来说可能有意义。
【讨论】:
这对我来说很复杂,但这是我所做的:
我安装了 PHPmyAdmin,因此我导出为 CSV,其中 , 分隔," 作为转义字符。 PHPmyAdmin 无法将" 处理为转义,因此我用\" 找到/替换了"" 的所有实例并且它起作用了。苏尔特!
【讨论】:
在 Numbers iWork 9 中打开 Excel 文件并导出为 CSV。使用 'CSV with LOAD DATA' 选项导入 MySQL 工作正常。
【讨论】: