如何正确地将数据从 *.csv 文件导入 mysql 数据库中的给定表
Posted
技术标签:
【中文标题】如何正确地将数据从 *.csv 文件导入 mysql 数据库中的给定表【英文标题】:how to correctly import data from *.csv file to a given table in mysql database 【发布时间】:2016-07-19 00:59:37 【问题描述】:我有一个 .csv 文件,其中包含如下行:
16.11.2015 00:00:01.118,0.94674,0.94641,1000000.0000,1750000.0000
现在我需要将 mysql 数据库中的值导入到一个有 9 个列的表中:
col1 - 16.11.2015 col2 - 00 col3 - 00 col4 - 01 col5 - 118 col6 - 0.94674 col7 - 0.94641 col8 - 1000000.0000 col9 - 1750000.0000
有谁知道如何分隔值 f.e.使用标准命令,例如: 将文件“file.csv”中的数据加载到以“,”结尾的表字段的表名中;
我试图在 mysql 知识库上寻找一些东西,但没有结果,这将是可行的......谢谢
【问题讨论】:
为什么要拆分日期\时间而不是将其存储为一个? 【参考方案1】:你在寻找这样的东西吗?
$file_handle = fopen($file, "r"); //opens CSV
while (($row = fgetcsv($file_handle, 1000, ",")) !== false)
...code..
http://php.net/manual/fr/function.fgetcsv.php
【讨论】:
如果可能的话,我想要一个直接的 mysql 命令?我想使用 LOAD 命令将 csv 文件直接加载到数据库中。【参考方案2】:如果可能的话,我想要一个直接的 mysql 命令?我想使用 LOAD 命令将 csv 文件直接加载到数据库中。
【讨论】:
【参考方案3】:你看过http://dev.mysql.com/doc/refman/5.7/en/load-data.html吗?
此外,一些数据库管理器/工具可以导入 CSV 文件。我正在使用 Sequel Pro,它有能力这样做。
【讨论】:
但我需要一个命令,然后它将成为我自己的应用程序的一部分。也许用 1-step coomand 不可能做到这一点......??以上是关于如何正确地将数据从 *.csv 文件导入 mysql 数据库中的给定表的主要内容,如果未能解决你的问题,请参考以下文章
如何有效且快速地将大型 (6 Gb) .csv 文件导入 R,而不会导致 R REPL 崩溃?