发表于: 2018-03-20 21:04:10
1 463
今天完成的事情:
任务1.1
暂定需要学员、辅导师兄、日报3个对象;
对象属性详见表结构设计;
学员与日报对象为一对多关系,学员与辅导师兄对象为多对一关系。
任务1.2
安装及配置mysql-5.7.21数据库
步骤:
1.下载mysql数据库的zip包,解压缩到合适路径
2.配置环境变量Path
3.创建mysql配置文件my.ini,添加basedir和datadir
4.管理员身份运行cmd,bin目录执行mysqld -install安装命令
5.继续执行初始化命令mysqld --initialize-insecure
6.启动net start mysql,登录mysql -u root -p 回车回车
任务1.3
下载并破解了navicat,下载了Hedisql,均成功连接到mysql
任务1.4
学员(师兄)表student:
日报表daily:
对比了两个之前师兄的表结构设计,发现没有日报表,感觉直接存日报链接更符合题意,暂删除日报表,并修改了学员表字段。
任务1.5
使用navicat创建了数据库和学员表,修改后学员表如下:
任务1.6
插入并查询一条记录,需要用到mysql的插入和查询语法,常用语法复习如下:
创建数据库:create database database_name;
删除数据库:drop database database_name;
创建表:create table table_name(col1 type1 [not null] [primary key], col2 type2 [not null], ......);
删除表:drop table table_name;
插入数据:insert into table_name(field1,field2,...) values(value1,value2,...);
更新数据:update table_name set field1=value1 where ...
删除数据:delete from table_name where ...
查询数据:select * from table_name where ...
尝试插入数据,报错:No database selected,原来navicat没有指定数据库,所以操作前要先执行use database_name;
插入语句如下:
use jnshu;
insert into student(name,qq,xiuzhenStyle,preStudytime,graduate,onlineID,pledge,knowFrom,daily,shixiong)
values('江吉仪','1649189468','运营','2018年3月6日','广西水产畜牧学校','散修-运营1班06',
'如果我不能在IT特训营拼尽全力,为自己以后的修行路上打好基础,就让我没女人缘。',
'知乎','http://www.jnshu.com/school/1430/daily?page=1','董瑞');
为了简化语句的执行,入学时间字段改成了varchar类型,其它时间字段未填值。
插入语句执行后有个Err1055的错误提示,不影响执行结果。百度了一下解决了,未深究原因。
结果:
根据姓名查询记录语句:select * from student where name = '江吉仪';
任务1.7
navicat直接点击对应栏位修改内容然后保存就行,用sql语句修改:update student set pledge='老大最帅';
任务1.8
将表导出为sql文件:在表名上右键选择转储SQL文件>数据和结构,选择路径确定即可。
navicat删除记录直接在记录行上右键选择删除,用sql语句删除:delete from student where name='江吉仪';
用备份的sql文件恢复数据:在数据库名上右键选择运行SQL文件,选择之前导出的sql文件运行。
任务1.9
给姓名建索引:
使用navicat,在表名上右键选择设计表,然后点击字段上方的‘索引’选项卡,可以添加索引;
使用sql语句建索引:create index index_name on table_name(column_name);
或者:alter table table_name add index index_name(column_name);
思考:ID、qq、线上ID等具有唯一性的字段都可以考虑建立索引。
任务1.10
插入10条语句:
sql语句选择insert into table_name(字段1,字段2,...) values(值1,值2,...),(另一个值1,另一个值2,...),...
一次插入10条记录,对比有无索引,sql语句的执行效率未发现明显差别,执行时间都在0.06s左右。
明天计划的事情:
查看深度思考中与mysql数据库相关的5-14个问题,思考并总结。
继续学习一下有关索引的知识,加深对什么情况适合建索引的了解,加大数据量测试任务1.10,明确建立索引对插入语句的效率影响。
继续做后面的任务。
遇到的问题:
1、安装mysql时,执行完步骤4的install命令,直接启动mysql会启动失败,并提示没有任何错误。原因是看的教程没有进行初始化(步骤5),缺少data目录。
2、初始化命令加上-insecure是不设root密码。登录回车后会有输入密码提示,直接再次回车登录即可。(以为要输密码,又百度了一堆)
3、设计业务模型和表结构时有些不确定,可能是需求不明确。
4、破解navicat时破解文件的压缩包无法解压,提示文件损坏,原来是因为解压软件winrar版本过低,需要5以上版本。
5、对索引问题不够了解。
收获:
温习了mysql数据库的安装和配置,以及一些基本sql语法。
稍微熟悉了navicat的使用,了解了一点Hedisql。
初步了解了PowerDesigner软件的使用。(设计业务模型时试了试)
PS:因为有些基础,所以有些地方就简写了,仅供参考。
评论