正如同标题,
标题的顺序是
先从Excel表单,保存为csv文档。
步骤:
1、这个可以用linux下的libra office打开 abc.xls
2、用libra office 将 abc.xls 保存成 abc.csv 文档(此例里面,abc.csv 文件大小约有40多MB), 中间需要选择 delimeter 分割符, quote 等
3、用搭建好的LAMP的环境,打开phpmyadmin,选择好以前建立的数据库。然后选择导入按钮。
看到右边有数据库文件大小限制。我已经修改好了。大小限制是512MB,足够大的数据库了。一般的情况下,默认的数据库上传文档为2MB。具体可以看这里
上传csv文档,转换成数据库表单会遇到下面几个问题。
1)上传的文件太大
具体操作修改php.ini文档 请参见本博客: phpmyadmin上传大小限制 链接 http://www.cnblogs.com/spaceship9/p/3186597.html
可以基本解决文档上传大小出现问题现象
2)MySQL数据库报错
上传巨大的MySQL数据库文档,会有一个错误,#2006 - MySQL server has gone away
具体解决方案,请参看本博客链接,#2006 - MySQL server has gone away 问题解决方法 (全) (转) http://www.cnblogs.com/spaceship9/p/3186668.html
言简意赅:
############################################################
原文地址:http://www.cnblogs.com/bisonjob/archive/2009/08/18/1548611.html
1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。
最常见的就是采集或者新旧数据转化。
解决方案:
在my.ini文件中添加或者修改以下两个变量:
wait_timeout=2880000
interactive_timeout = 2880000
关于两个变量的具体说明可以google或者看官方手册。
如果不能修改my.cnf,则可以在连接数据库的时候设置CLIENT_INTERACTIVE,比如:
sql = "set interactive_timeout=24*3600";
mysql_real_query(...)
2、执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。
比如,图片数据的处理
解决方案
在my.cnf文件中添加或者修改以下变量:
max_allowed_packet = 10M (也可以设置自己需要的大小) 这里,就本例而言,被修改成 max_allowed_packet = 100M 因为,这里的 abc.csv 文档大小为40多MB
如果不修改的话,真的还会出现 MySQL错误 #2006
max_allowed_packet 参数的作用是,用来控制其通信缓冲区的最大长度。
######################################################
4、修改设置php.ini my.ini (或者有的版本是my.cnf) 完毕后,就点击上图中的上传按钮
然后全自动化就会看到!
恭喜!数据库已经导入成功啦!
现在可以基本上浏览一下数据库中,某一表单的内容啦。
查看表的结构
查看表的内容
所以,我们总结一下。
正如同标题的思路一样!
excel==>csv==via phpmyadmin (edit php.ini & my.ini)==> MySQL Database
Happy Coding :)