这个问题几乎就是我想要的:
如何将excel文件导入MySQL数据库
但是我还会在这里提出一个额外的部分。
从最后一个问题,答案说使用LOAD DATA INFILE。 但这不是假设我已经在数据库中创建了我的表结构吗? 在我的情况下,我有一个大约100列的excel文件,我不想首先创建一个包含所有这些列的表。
所以我的问题是:有没有办法使用excel文件的第一行作为数据库表中列的名称?
编写一个可以做到这一点的小工具是相对微不足道的,从未见过准备好使用的工具。
既然你正在使用phpMyAdmin,这就是我要做的:
将Excel文件另存为CSV文件(文件 - >另存为...)
从phpMyAdmin中,转到要导入的数据库(如果需要,首先创建它)。
你有两个选择;您可以自己设置表结构,或者让phpMyAdmin根据您的CSV文件对其进行大量猜测。听起来你想要第二个选择,所以你可以进行导入,然后根据需要更改表数据类型。因此,单击"导入"选项卡,在磁盘上查找CSV文件,然后仔细检查导入选项。如果已将列名放在CSV的第一行/标题中,请选中"文件的第一行包含表列名"框,否则phpMyAdmin将生成一些内容。对于我的测试,关于分隔符的默认设置很好;您的Excel版本可能不同,但这里很容易调整值。按Go。
phpMyAdmin执行导入并尝试为您的数据使用合理的列类型。您将获得一个具有相当通用名称的结果表(您可以重命名);然后,您可以浏览数据或查看结构以调整任何看起来不正确的内容。特别是,您应该查看任何非文本字段(日期,数字等),以确保它们以正确的数据类型存储。
如果你的文件太大,你可能会遇到麻烦,因为PHP会限制phpMyAdmin允许使用的时间和内存。您可以通过分阶段导入文件来解决此问题。
祝好运。
顺便说一句,100列听起来过分;您可能需要检查以确保以最佳方式存储数据。