第八周学习总结
Posted skip_2_my_lou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第八周学习总结相关的知识,希望对你有一定的参考价值。
上上周完成了java面向对象部分的学习,并于上周正式迎来了数据库部分的学习,以往的学习中我们的数据最早通过集合来存储,但是这样的数据存储是临时的,一旦程序关闭重新运行数据便会丢失。后来通过操作excel来存储数据,可以做到数据的永久保存,但操作起来相对繁琐。在实际开发中,数据的存储和增删查改等操作是通过数据库来完成的,第一节课老师先给我们介绍了数据库的基本知识,并强调了数据库对于我们整个学习和以后工作的重要性,数据库是程序员必备技能之一。数据库的集中式控制有以下优点:1.降低存储数据的冗余性2.更高的数据一致性3.存储数据可以共享4.可以建立数据库所遵循的标准5.便于维护数据完整性6.能够实现数据的安全性。数据库发展过程中出现了四种不同的数据模型:层次模型、网状模型、关系模型和对象模型。现阶段的实际开发中绝大多数运用的是关系模型,再后来对象模型的出现解决了关系模型的缺陷,但是由于关系模型的数据库技术已经很成熟,且已经有大量的数据已存储在关系型数据库中了,所以目前关系型数据库仍占主流。关系模型把世界看作由实体和联系组成,表是关系型数据库的核心单元,也是存储数据的地方。表的每一行代表一个实体,每一列代表一个属性,表中可以用主键来唯一标识每一行,主键不能为空,可以通过使用AUTO_INCREMENT来自增,此自增语句只对主键有效。外键用来表达表和表之间的关系,一个表中的外键通常是另一个表中的主键。通过使用CREATE来创建数据库和表格,DROP来删除数据库和表格。数据完整性=可靠性+准确性,保证数据完整性有两种方式:一种是设置主键约束,另一种是通过unique设置唯一约束。需要注意的是主键约束默认不能为空,而唯一约束可以为空。对表格添加数据用INSERT,更改已有数据用UPDATE,删除行用DELETE,TRUNCATE也可以删除行,但这种删除是不可恢复的操作,数据会永久删除。通过使用SELECT关键字来查询数据,通过聚合函数SUM,COUNT,AVG,MIN,MAX可以实现数据统计分析,使用GROUP BY可以对数据按照特定条件分组,并使用HAVING语句对分组后的表格过滤,需要注意的是WHERE也可以对表格进行过滤,但WHERE的过滤功能是在表格分组前进行的。理解SQL的语句执行顺序对于正确编写SQL语句尤为重要,关系型数据库执行SQL语句时,其顺序为:1、限制性FROM子句,将FROM子句中的表作为中间表2.如果有WHERE子句,则按照WHERE子句对表格进行过滤3.根据GROUP BY条件分组4.为每个组SELECT子句聚合函数的值,并为每组生成查询结果的一行。5.如果有HAVING子句则按HAVING子句的过滤条件对分组后的聚合计算的结果再次过滤6.最后如果有ORDER BY子句,则按其条件排序,默认为ASC(升序)可以不写出ASC,降序DESC必须写出。
以上是关于第八周学习总结的主要内容,如果未能解决你的问题,请参考以下文章