首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP -上传CSV文件并导入到数据库,其中表不存在

问PHP -上传CSV文件并导入到数据库,其中表不存在
EN

Stack Overflow用户
提问于 2015-07-22 20:15:19
回答 1查看 177关注 0票数 0

我需要创建一个PHP文件,它将包含大量数据的文本文件,并将其导入到MySQL数据库中。

我知道我可以通过打开文件、解析它并在每行使用单独的命令来插入数据来做到这一点。

但我想知道,如果MySQL表不存在,是否有办法做到这一点。

我正在尝试尽可能地自动化这个过程,以消除时间和潜在的人为错误。

那么,有没有可能在PHP中指定一个文本文件(它是CSV文件,但数据用'|‘而不是逗号分隔),并让PHP脚本首先创建MySQL表,然后将完整的数据文件导入到该表中?

文本文件的第一行将始终包含列名。

我知道我可以这样做:打开文件,取第一行,用它来创建表,然后返回并再次循环文件,一次插入一行数据-但我想知道是否有比这更快、更有效地处理文件的方法!

文件真的很大,所以方法需要尽可能高效,我觉得可能有一个我不知道的命令??

EN

回答 1

Stack Overflow用户

发布于 2015-07-22 20:19:19

http://dev.mysql.com/doc/refman/5.0/en/mysqlimport.html

喜欢

代码语言:javascript
复制
mysqlimport  --ignore-lines=1 --fields-terminated-by=,
--columns='ID,foo,bar' --local -u root -p
Database /path/to/csvfile/TableName.csv 

为了创建实际的表,您应该在导入数据之前对其使用查询。使用该查询,您可以指定任何内容来创建表、列和数据类型等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31562860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档