发表于: 2018-03-09 19:34:23

4 446


1.下载并安装及配置Mysql 5.7  mac版本的MySQL相比Windows版本,多了很多配置的事情,还需要修改系统变量。

2.下载Navicat,并且破解。

3.使用navicat 连接MySQL数据库。

在创建mysql数据库时,遇到了字符集和排序规则的问题,字符集我知道,是数据库采用的编码格式,现在支持中文最好的字符集模式是utf-8.

百度了以后才知道,原来排序规则指的是在使用字符集的时候,不同字符间的比较规则,最常见的就是大小写敏感和不敏感的比较- -

utf-8的默认规则是utf8_general_ci,这种模式是指大小写不敏感,还有一种是utf8_general_cs,这种是大小写敏感- -

先默认用着,以后根据实际需求可以在改动,还有一种常见的比较规则是bin()2进制比较,等用到了再说。

4.第4条创建报名帖的时候,遇到了坑- - 任务要求里面说的long类型指的是java中的long类型,然而mysql中并没有这种类型 - -

后来问了学长才知道,原来MySQL中没有long类型,后来自己百度才知道Java中的long类型就是mysql中的bigint,同时numeric也可以用- -

没有想过为何要用long类型而不是date数据类型,后来看了别人的日报以后,才知道:

1.long类型占的内存小

2.date只表示时间,在实际运算中只能标志,不如long计算方便,而且date还要根据当地的时区进行换算。

最后mysql语句如下:

在把ID申明为自增ID的时候,经过查证,知道只有主键ID才可以申明为自增模式,所以在sql语句最下方加了一个primary key(id),

最后结果如下:

5.做到任务5的时候,我才发现我把任务4和任务5混合在一起了 - -

然后我在回去补任务4的业务表的时候,发现字段少了几个,没有师兄和地址,我在用mysql语句将师兄和地址字段插入到表中。

,在添加师兄这个字段的时候,发现了一些数据类型的区别。

像int,bigint 这样的长度就可以为空,而nvarchar这样的就不能为空。有时间可以在研究研究哪些可以为空,哪些不能为空。

恩,这就是最后结果- -

6.要添加最后一个报名的同学,看来看去好像就是我自己- - 在学的时候,发现用navicate 插入字符串,颜色会变成红色,我一开始还以为红色是错误的,经过我的反复研究,发现- -变成红色才是对的。

7.做第7个任务的时候,发现还有个报名宣言,然后我还得回去添加这个字段- -

恩,继续填坑- -

发现在用navicat 图形界面操作字段的时候,电脑反应会很慢,但是在navicate或者cmd中用sql语句进行操作,效率就很高,记下来

8.

使用cmd删除表信息.


使用命令source /users/macbook/Desktop/student.sql 来导入sql文件。

在navicat上面删除表信息。

在navicat上添加sql文件。

9.给姓名键索引:

索引提供的是数据库所在表的指针信息,指针中存储的是对应内容的物理地址,可以根据指针信息快速查找内容。

索引的长度和区分度相关,根据下表可知,长度最好为4。

索引分为聚焦索引和非聚焦索引。聚焦索引能提高多行检索的速度,而非聚焦索引对于单行的检索很快。

索引的作用:1.类似于图书的目录,可以快速的找到所需要的内容。

                   2.由于索引中存储的是指针信息,所以可以保证数据的唯一性。

  索引的缺点:1.索引也需要占用物理内存  

                       2.当对数据库的数据信息进行修改时,索引数据也需要修改,所以会降低数据的维护速度。

在一个表中最好只建立一个索引,而且还能和其他表相对应。

在创建索引的时候,由于输入的索引长度不适宜,所以打算做修改处理,后来经过研究发现,mysql并没有提供索引修改功能,一般都是先删除在创建。

所以删除创建的索引。

查看创建索引,show index from student;

主键也被数据库看成了索引,主键默认索引。

再次创建索引,索引长度为4.

create index index_name on student(name(4));

10.

.

使用索引的情况下,速度为0.002S.

将索引删除.

时间为0.000s.

.



返回列表 返回列表
评论

    分享到