赞
踩
我假设你已经安装好mysql以及navicat了,现在已经准备用数据库处理数据了。
首先第一步,肯定是导入数据。但是这一步可能你会遇到很多问题(至少我自己亲身体会是这样),这样那样的问题,可能让你在现场项目中已经放弃使用了。
那么,这篇文章,我们就梳理下一些常见的问题。
首先进入navicat的时候点击“连接”->"mysql"
他会让你输入一个连接名,比如我输入nigo,以后进来就左边会有一个叫“nigo"的连接。
这里需要注意的是需要把这个”主机名或IP地址“默认的”localhost"改成127.0.0.1。假如你不修改的话,如果你断网的时候系统不知道你这个localhost是什么鬼,它只认识127.0.0.1作为你的本机。
如果你之前已经建立了连接,想要解决这个问题,就在连接上右键点击“连接属性”,进入到这个界面进行修改。
数据导入出错经常会发生,这里有几种情况,我先把坑给大家排一排。
客户可能到给你的数据很多种类型,可能是excel,CSV,txt。我目前遇到的就这三种,当然其他的数据格式都可以导入进去。
你可以自己先在“nigo"连接下新建一个自己的数据库,比如我建了一个"cpa"的数据库,点击“表”,再点击右边的导入向导。
excel导入的时候问题最多。动不动就是弹出下面的警示。
如果出现这样的情况,就用excel先另存为csv或者txt文件。
我一般就另存为CSV文件,这里需要注意的是,如果你的表里面有中文字符,那么编码格式必须要UTF-8或则unicode两种才能正常显示。所以我们这里选择“CSV UTF-8(逗号分隔)"。这个选项。
注:如果客户要给你导数据出来,建议让他们给你导CSV或者txt格式的,原因是excel经常有问题,还有就是excel有100多万行的限制。而CSV没有行数限制。
txt出现问题最多的可能就是编码问题。当你导入数据库的时候,如果发现是乱码那么应该是有中文的文本,然后他给你保存的是ANSI编码的格式。这个时候解决方式是,用记事本打开txt,然后另存为"UTF-8"编码格式的。
CSV好像没啥问题,如果有也应该是编码的问题,解决方法应该用excel打开还是另存为“UTF-8"格式的就行了。
一般这一步都是默认就行了,如果后面是乱码,看看是不是选择的编码不对,返回来选择文本对应的编码。后面的一般就是默认,下一步就行了。
如果到最后一步,发现"目标栏位"也就是列名那里,所有列都凑在一起了,那么就是前面分隔符没有对。你看这里截图可以看到分割符是“逗号”。
返回到前面的步骤:
在栏位分隔符这里选择到对应的分隔符,比如选择“逗号”。
这次可以看到,每一列都分开了。
这里类型是非常重要的,刚开始学的时候我都会在这里把对应的类型选择好。比如,整数我就选择bigint,文本我就默认varchar,日期我就date,时间我就time ,日期时间格式我就选择datetime。
因为如果你不是数字类型的就不能运算,不是日期类型的就不能用日期时间函数。
这样做感觉是对的,但是实际操作过程中,这样会发生大量的导入错误。
所以这一步我们就不要进行任何操作,直接默认varchar,就完全按照文本格式导入进去。这样基本上不会有导入数据错误。
当正确导入后,再进行修改类型,操作如下:
选中表后,单击右键,然后选择“设计表”,又可以进行到开始的界面,对现有的数据类型进行修改。
当我们导入成功后,并写好了SQL语句,查询出结果后,我们想把数据导出来。
按ctr+s保存查询语句,然后选择你的查询表,然后单击右键,选择“导出向导”。
这样可以把数据导成excel等格式。
但是,当导出的数据有几十万行的时候,这个过程十分缓慢,令人发指。
这里有个非常快的技巧,就是用excel的数据导入功能,连接数据库,把数据导入导excel里。非常之快,每秒可以导入上万行。
操作如下:
不清楚这两个对应什么的可以看下下面的图参考下。
对于我们本机安装的来说,一般账号就是root,密码就是你当初设置的密码。
结语
以上可能是你准备把数据导入进数据库学习的时候遇到的拦路虎,刚开始,要是数据都导不进去或者说生成的结果导出非常慢,真的很影响学习的心情和动力。
希望我遇到的这些问题能够帮助你跳过这些坑。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。