专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java数据库编程教程视频,浅谈数据库主键和外键及索引

Java数据库编程教程视频,浅谈数据库主键和外键及索引

更新时间:2020-02-18 10:11:05 来源:动力节点 浏览2126次


Java数据库编程教程视频,浅谈数据库主键和外键及索引


  1、主键:


  若某一个属性组(注意是组)能唯一标识一条记录,该属性组就是一个主键。主键不能重复,且只能有一个,也不允许为空。定义主键主要是为了维护关系数据库的完整性。


  2、外键:


  外键用于与另一张表的关联,是能确定另一张表记录的字段。外键是另一个表的主键,可以重复,可以有多个,也可以是空值。定义外键主要是为了保持数据的一致性。


  3、索引:


  索引是对表中一个或多个列的值进行排序的结构。


  1)应该创建索引的列的特点:


  ①在经常需要搜索的列上创建索引,可以加快搜索的速度;


  ②在作为主键的列上创建索引,强制该列的唯一性;


  ③在经常用在连接的列上创建索引,主要是一些外键,可以加快连接的速度;


  ④在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的;在经常需要排序的列上创建索引,因为索引已经排序,可以利用索引的排序加快查询;


  ⑤在经常使用在WHERE子句中的列上创建索引,加快条件的判断速度。


  2)不应该创建索引的列的特点:


  ①在查询中很少使用的列上不应该创建索引,因为这些列很少使用到,因此有索引或无索引,并不能提高查询速度,相反由于增加了索引,反而降低了系统维护速度,增大了空间需求;


  ②在只有很少数据值的列上不应该创建索引,很少数据值的列如性别等,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大,增加索引,并不能明显加快检索速度;


  ③当修改性能远远大于检索性能时,不应该创建索引,因为改性能和检索性能是互相矛盾的,当增加索引时,会提高检索性能,但会降低修改性能,当减少索引时,会提高修改性能,但会降低检索性能。因此,当修改性能远大于检索性能时,不应该创建索引。


  3)可以在数据库设计器中创建三种索引:


  ①唯一索引:


  不允许其中任何两行具有相同索引值的索引。


  ②主键索引:


  表的某一列或列组合,其值唯一标识表中的每一行,该列或列组合称为表的主键。为表定义主键将自动创建主键索引,主键索引是唯一索引的特定类型。该索引要求主键中的每个值都唯一。


  ③聚集索引:


  聚集索引:聚集索引表示表中存储的数据按照索引的顺序存储。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。


  聚集索引实例:字典默认按字母顺序排序,如知道某个字的读音可根据字母顺序快速定位。


  非聚集索引:非聚集索引表示数据存储在一个地方,索引存储在另一个地方,索引带有指针指向数据的存储位置,需要查询两个地方才能查找到数据。一个表可以包含多个非聚集索引,可以为查找数据时常用的每个列创建一个非聚集索引。


  非聚集索引实例:如需查询某个生僻字,则需按字典前面的索引,如按偏旁进行定位,找到该字对应的页数,再打开对应页数找到该字。


  与非聚集索引相比,聚集索引通常提供更快的数据访问速度,但对数据更新影响较大。


  4)索引的优点:


  加快对数据的检索。


  5)索引的缺点:


  ①减慢数据录入的速度;


  ②增加了数据库的尺寸大小。


  4、主键和外键的关系:


  外键是另一个表的主键,主键是可以被外键有效引用的对象。若A表中的一个字段,是B表的主键,则它可以是A表的外键。


  5、主键和外键以及索引的区别:


Java数据库编程教程视频,浅谈数据库主键和外键及索引


  下面是一个简单的比较表


Java数据库编程教程视频,浅谈数据库主键和外键及索引


  总结


  从工作内容上来讲,我们会把数据分为数据开发、数据分析、数据仓库、数据挖掘的话。很多人觉得高大上的是数据挖掘,觉得工程最强的是数据开发。


  换一个角度,我们从数据的角度来讲的,我们会把数据分为:数据计算、数据价值和数据管理。我们很多是以数据价值为导向地来做数据计算,但是往往会忽略数据管理,而数据仓库的理念恰恰是数据管理。因此可以在适当的业务阶段来重视数据管理。


  数据库相关视频教程


  oracle数据库教程:http://www.bjpowernode.com/v22/


  数据库plsql教程:http://www.bjpowernode.com/v23/


  jdbc数据库教程:http://www.bjpowernode.com/v24/


  数据库mysql教程:http://www.bjpowernode.com/v21


  Java实战项目视频之egov项目视频教程【免费下载】:http://www.bjpowernode.com/v83/


  Java学生成绩管理系统视频教程【免费下载】:http://www.bjpowernode.com/v51/


       以上就是动力节点Java培训机构小编介绍的“Java数据库编程教程视频,浅谈数据库主键和外键及索引”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>