发表于: 2017-02-06 20:28:26

1 2156


今日完成的事:

向student表中插入数据,并能够根据姓名查出来这条记录

insert into student(name,qq,entranceDate) VALUES ('小明','123456','123901238712783');

select * from student where name='小明'


分别用Navcat和Sql语句去将本条数据记录的报名宣言改成老大最帅

update student set fremark='老大最帅' where name='小明'


8、将表导出成Sql文件,并使用navcat和Sql分别尝试删除此条数据,并用之前备份的Sql恢复。

在表上点击右键,选择导出向导或转储SQL文件,都可以讲表导出

删除表数据:TRUNCATE TABLE student  或 delete from student

truncate 与delete 的区别:

tuuncate:  删除所有数据    后面不可以加条件   速度较快  无法退回

delete:  可选择删除数据  后面可以加条件where ...(name='小明')   速度较慢  可以退回


9、给姓名建索引,思考一下还应该给哪些数据建索引

参考:     http://www.jb51.net/article/73372.htm

ALTER table student ADD INDEX name_index (name)


通常情况下:当表数据量较大的时候,需要给需要查找where的列和需要排序的列order by 添加索引


两个表相关联也需要添加索引,所以class列(与班级表管理)和studyNum列(排序)需要添加索引


ALTER table student ADD INDEX studyNum_index (studyNum)

ALTER table student ADD UNIQUE (class)

10、插入10条数据,查看有索引和无索引的情况下,Sql语句执行的效率

在插入10条数据时 ,有索引和无索引真的看不出差距。

 我调整为插入500条数据,在无索引的情况下用时11.946s ,

在有索引的情况下用时12.862s

说明索引会影响插入的数据。因为在插入数据时要维护索引,并且在有唯一索引时,在插入数据前要先查重,这就导致 数据量越大,对插入数据的影响也就越大。


遇见问题:

1.不懂  三个基本的字段,ID(自增Long),create_at,update_at(所有的时间都用Long) 是什么意思?字段不是应该是表的字段么??是不是意思是每一个表中都需要含有这三个字段??

2在插入数据时 插入中文出现乱码。

解决方案,在navacit中编辑数据库 ,将表默认编码设为UTF-8
并将字段的字符集也设成utf-8


明日计划:

11、12、13、14、15、16、17


返回列表 返回列表
评论

    分享到