我有一个电子表格,实际上只有一个复杂的表格。我基本上将电子表格转换为cvs,并使用常规脚本生成INSERT脚本。
但是,我无法使用包含28个字段的表来执行此操作,该表包含电子表格中某些字段中的数据,这使得导入CVS更加复杂。因此,新CVS中的字段无法正确区分,或者我的脚本没有对此进行说明。
有人对更好的方法有任何建议吗?谢谢。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实际上,有几种方法可以将excel文件导入到MySQL数据库中,复杂程度和成功程度各不相同。
Excel2MySQL或 Navicat实用程序。完全公开,我是Excel2MySQL的作者。这两个实用程序不是免费的,但它们是最简单的选择,并且具有最少的限制。它们还包括其他功能,可帮助将Excel数据导入MySQL。例如,Excel2MySQL自动创建您的表并自动优化日期,时间,浮点数等字段数据类型。如果您着急或无法使用其他选项来处理数据,则这些实用程序可能会满足您的需求。
Excel2MySQL的屏幕截图
LOAD DATA INFILE:这个流行的选项也许是最技术性的,并且需要对MySQL命令执行有所了解。您必须在加载和使用适当大小的VARCHAR字段类型之前手动创建表。因此,您的字段数据类型未优化。LOAD DATA INFILE在导入超过“ max_allowed_packet”大小的大文件时遇到问题。需要特别注意以避免导入特殊字符和外来unicode字符时出现问题。这是我最近用来导入名为test.csv的csv文件的示例。
在此处输入图片说明
phpMyAdmin:首先选择数据库,然后选择“导入”选项卡。phpMyAdmin将自动创建表并调整VARCHAR字段的大小,但不会优化字段类型。phpMyAdmin无法导入超过“ max_allowed_packet”大小的大文件。
在此处输入图片说明
MySQL for Excel:这是Oracle的免费Excel加载项。此选项有点乏味,因为它使用向导,并且导入大文件时速度较慢且有错误,但是对于带有VARCHAR数据的小文件来说,这可能是个好选择。字段未优化。来源:stack overflow