发表于: 2017-04-17 15:38:15
1 1637
今日完成
- 配置好MySQL,安装navicate并创建student表如下:
- 通过mySQL插入并查询:
- 修改
(我会被打死吗。。)
(可能不会了)。
- 建立索引
- 为什么DB的设计中要使用Long来替换掉Date类型?
- 他给了date类型为默认类型,我们为什么不用??但如果从结果反推,date类型本身设计可能出现和其他语言类似的混乱情况,在修改、移植时可能效果不佳。
- 自增ID有什么坏处?什么样的场景下不使用自增ID?
不小心看到师兄回答比如公司人数等机密易泄。
什么是DB的索引,多大的数据量下建索引会有性能的差别,什么样的情况下该对字段建索引?
Google了一下,索引似乎是排序以避免全表搜索,我认为10条大概看不出区别,也许需要Kb级的数据才有可观区别,字段经常被用来检索数据需建立索引。
唯一索引和普通索引的区别是什么,什么时候需要建唯一索引。
set与list?主键?唯一索引可以被视作key大概。
如果对学员QQ号做了一个唯一索引,在插入数据的时候,是否需要先判断这个QQ号已经存在了?
反正会报错,如果不判断的话,然后再处理?何必呢,做了索引判断耗时应该不高,先判断吧。
CreateAt和UpdateAt的意义分别是创建时间和修改时间,这两个时间应该在什么情况下赋值?是否应该开放给外部调用的接口?
createAt在创建时就应该被自动赋值为佳(我还不会),updateAt在被update语句修改时自动赋值(yeah),显然不应该。
修真类型应该是直接存储Varchar,还是应该存储int
Varchar吧?这样更直观,也好检索,但Enum是不是更好?
varchar类型的长度怎么确定?有什么样的原则,和Text和LongText的区别是什么?
varchar(M)是最大M的变长字符串(M<=255),text最大64kb,longText最大4gb。
怎么进行分页数据的查询,如何判断是否有下一页?
我现在批量插入数据都不会,@todo
为什么不可以用Select * from table?
数据量可能过大,大部分时候也不需要显示所有字段。
问题及解决
1、navicate中无法使用long为类型,查询师兄日报QA得知采用bigint。
2、如图,我无法运行任一语句,后来发现语句最后我漏了一个 ';'号,mySQL语句需以‘;’号结束。
3、额;?
4、查询时间,例如
时间为0.00sec,暂无法比较。
明日计划
已进行基础JAVA的学习,Eclipse和JAVA8已配置
对Maven,DAO一无所知,Junit,Spring仅有耳闻
至少明天把Maven及DAO搞定,尽量把进度推到买云之前,视内容多少为定。
评论