MySQL学习(一)---表

版权声明:欢迎读者转载,如果有问题请给与评论。 https://blog.csdn.net/qq_41848006/article/details/88565766

一,MySQL的表的组成,

         看下面这幅图,创建表的额基本组成都有了。嘻嘻,还有没有的,用到再了解吧。下面我主要从深层次的理论方面 的理解以及实践其他的只说一下概念及用法即可。

 二,键(超键,候选键,主键,外键)下面我从这几个方面一一解答。

  • 什么是键?
  • 为什么要有键这个东西?
  • 键是是用来做什么的?
  • 怎么用键?
  • 怎么用好键?

 1.什么是键?为什么要有键这个东西?键是用来做什么的?

数据库中称之为关键码,简称键。好了,我们看到两个字关键,百度百科是这样解释的:对事物最紧要的重要组成成分。那我们知道了这个关键码是一个表的重要组成成分,那如果不要这个关键码,有什么影响呢?这个关键码好比我们的名字,如果我们没有名字,那别人都不知道叫你什么,所以为了方便,就给我们人加了名字这样的属性。 键也一样为了能够标识每一行。键可以有一个或者多个属性组成。

2.键的分类

  • 超键:在关系数据库中能够唯一的标识元祖的属性集
  • 候选键:能够唯一的标识元祖,并且不含有多余属性的超键。
  • 主键:用户选作元祖标识的候选键。
  • 外键:在两个关系模式中,一个模式的主键在另一个模式中。

 (有相同名字的学生)举个列子:学生(学号,姓名,课程号,)  课程(课程号,课程名,课程老师)

学生表的超键有:(学号)(学号,姓名)(学号,课程号)(学号,姓名,课程号);

              候选键有:(学号)

              主键:(学号)

              外键:(课程号)课程号在课程表中是主键,但是在学生表中是外键。

 主键,超键,候选键的作用:

①保证实体的完整性

②加快数据库的操作速度

③在表中添加新记录时,表会自动检查新纪录的主键值,不允许该值与其他记录主键值重复

④表自动按主键值的顺序显示表中的记录,如果没有定义主键,则按输入记录的顺序显示表中的记录

 3.索引:是对表中的一列或者多列做进行排序的结构。目的就是加快表的检索速度。

        例如这样一个查询:select * from table1 where id=10000。如果没有索引,必须遍历整个表,直到ID等于10000的这一行被找到为止;有了索引之后(必须是在ID这一列上建立的索引),即可在索引中查找。由于索引是经过某种算法优化过的,因而查找次数要少的多。可见,索引是用来定位的。

        从数据搜索实现的角度来看,索引也是另外一类文件/记录,它包含着可以指示出相关数据记录的各种记录。其中,每一索引都有一个相对应的搜索码,字符段的任意一个子集都能够形成一个搜索码。这样,索引就相当于所有数据目录项的一个集合,它能为 既定的搜索码值的所有数据目录项提供定位所需的各种有效支持

猜你喜欢

转载自blog.csdn.net/qq_41848006/article/details/88565766