发表于: 2018-09-10 20:52:03
1 673
Task1的第一天
今日完成
Q1-Q16
了解了MySQL的配置和简单使用,学会了navicat管理数据库
配置Java,Maven环境,建立了Maven项目,测试了clean,install等Maven命令
1.参考修真院线下报名贴(学习资料-线下报名-北京报名)中报名的格式,整理出业务模型,确定需要几个对象,每个对象的属性是什么,对象和对象之间的关系是一对一,还是一对多。
E-R图:
业务模型:
2.安装mysql
3.下载navicat,连接mysql
4.创建的业务表,部分参考师兄设计
5.使用navicat设计mysql数据库
6.插入报名数据
INSERT INTO student (
create_at,
update_at,
NAME,
qq,
job,
start_time,
number,
college,
daily_url,
wish,
brother,
referee,
city,
review
)
VALUES
(
UNIX_TIMESTAMP( now( ) ) * 1000,
UNIX_TIMESTAMP( now( ) ) * 1000,
'金石开',
'1050376715',
'产品经理',
UNIX_TIMESTAMP(' 2018-07-10 ')*1000,
'1359',
'北京师范大学',
'http://www.jnshu.com/school/28015/daily',
'如果我不能在IT特训营拼尽全力,为自己以后的修行路上打好基础,就让我变胖2斤!',
'李天宇',
'',
'北京',
'待审核'
);
根据name查询
select * from student where name='金石开';
- 7.修改报名宣言为老大最帅
mysql:命令行
update student set wish='老大最帅' where id=2;navicat:图形化
注:几乎所有update(修改),delete(删除)都会涉及到where语句
where语句:
参考:http://www.runoob.com/mysql/mysql-where-clause.html
- 8.导出SQL数据,并尝试删除数据,用备份恢复
navciat
备份及还原
删除数据:
mysql
C:\Users\suger λ mysql -u root -p Enter password: ****** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 31 Server version: 5.7.22-log MySQL Community Server (GPL)查询:
MySQL导出,导入数据不太清楚,只能用navciat备份及恢复
删除:
mysql> delete from student where name='金石开';
9.建立索引
索引的建立对于MySQL的高效运行是很重要的,索引可以提高MySQL的检索速度。
打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。
索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。
创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。
实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。
虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行INSERT、UPDATE和DELETE。因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件。
建立索引会占用磁盘空间的索引文件。
从提高查询角度看:给**姓名,qq,入学时间,**加索引
10.插入10条数据,查看有索引和无索引的情况下,Sql语句执行的效率
无索引
有索引
mysql> create index nameindex on student(name);
Query OK, 0 rows affected (0.39 sec)
Records: 0 Duplicates: 0 Warnings: 0
测试多次发现,几乎没有影响,上图第一次查询id=8,id=9基本相同
11.深度思考中Mysql相关的一些问题
CreateAt和UpdateAt的意义分别是创建时间和修改时间,这两个时间应该在什么情况下赋值?是否应该开放给外部调用的接口?
CreateAt在创建的时候赋值
UpdateAt在修改的时候赋值,若修改,则应该CreateAt=UpdateAt
可以开放给外部调用的接口,方便查看记录
自增ID有什么坏处?什么样的场景下不使用自增ID
- 自动增长,在手动要插入指定ID的记录时会显得麻烦
- 自动增长会导致id不连续,比如有2条数据,删除id=2后,插入新的数据,id从3开始,若反复删除的话会id不连续,对程序后台添加测试不方便
- 待补充
12.下载Java ,并配置环境变量
参考:https://jingyan.baidu.com/article/db55b609fa946e4ba20a2f56.html
JRE: Java Runtime Environment(Java运行时环境)。
它可以提供运行时环境,因此它是JVM的实现,是物理存在的。
它包含一系列函数库和运行时用到的其他文件
一般是运行Java程序用的
JDK: Java Development Kit(Java开发工具包),包含JRE和其他开发工具
适合开发人员使用
13,下载Maven3,并配置好环境变量
Maven安装路径 :D:\IDES\apache-maven-3.5.4\
Maven配置同Java: 在path变量里面编辑
14.下载Eclipse或者是IDEA,配置外部Maven
安装IDEA及配置: https://gitee.com/WebTutorial/IntelliJ-IDEA-Tutorial
IDEA配置Maven
15.创建一个新的maven项目,建立Hello类
16.clean,install.查看本地的.m2下是否成功看到有Jar包
[INFO] --- maven-install-plugin:2.4:install (default-install) @ taks1-demo ---
[INFO] Installing C:\Users\suger\Desktop\taks1-demo\target\taks1-demo-1.0-SNAPSHOT.jar to D:\maven\repository\com\java\taks1-demo\1.0-SNAPSHOT\taks1-demo-1.0-SNAPSHOT.jar
[INFO] Installing C:\Users\suger\Desktop\taks1-demo\pom.xml to D:\maven\repository\com\java\taks1-demo\1.0-SNAPSHOT\taks1-demo-1.0-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11.248 s
[INFO] Finished at: 2018-09-10T19:45:32+08:00
明天计划
完成 Q17-23, 手动搭建服务器环境,深度思考MySQL不了解,明天开始学起!
遇到的问题:
无
收获:
以上
评论