数据库模式是什么?
数据库模式是描述整个数据库的数据结构和数据库底层架构的事务。它分为逻辑模式(俗称:“模式”),外模式(俗称:“子模式”or“用户模式”),内模式(俗称:“存储模式”)。逻辑模式是描述数据库中全体数据的逻辑结构和特征、外模式是描述数据库用户能够看见和使用的局部数据的逻辑结构和特征、内模式描述了数据的物理结构和存储方式,是数据在数据库内部的表示方式。
数据库关系模式是什么?
它所指待的是对每个表或者是字段之间存在关系的描述。譬如一个数据表class里面有三个字段,姓名name,年龄age,性别gender(PS:Sex带有不文雅的意思所以不建议使用)。那么我们可以得出如下的关系模式:class_schema=(name,age,gender);这只是一个简单的关系,如果是多个表联系,那么关系模式是有很多个的。关系模式形式化表示为:R(U,D,dom,F):R是关系模式的名字,U指属性名集合,D指属性集合U的域(范围),dom指属性向域的映象集合,F指属性间数据依赖关系集合;通常可以简写为R(U)或R(A1,A2,…,An);
码,码,码?
码相当与身份识别器,而码又分为很多种:超码,主码,外码,候选码。超码是一个或者是多个属性的集合,而这个组成的超码集合可以唯一的标识出某条数据(元组)。譬如本人的身份证号码可以是一个超码,可以确认你的信息。而你的身份证加姓名也可以组成一个超码;同样可以确认你的信息。但是你的名字是不能做为超码的,有很多同名的。例如我的名字廖君,而还有一个女歌手也叫廖君;
候选码:上面那个例子中,假如就两个人。假如不考虑身份证,那么我们要区分还可以用性别(我是男的).那么这个性别就在这里可以当作候选码。(这只是一个比如)
外码:外码就是另外一个关系模式的主码。譬如我们学校有两个叫廖君(还真有一个老师,一个就是我)。但是我们需要区分开来谁是老师,谁是学生。那么我就需要一个表来记录,数字1是老师,0是学生。现在在我的数据里面添加一条身份代码:0,那么这个身份代码就是一个外码。
主码很简单,相当与你本人的身份证号码。(正常身份证)不需要其他额外的标识符就可以确认你的信息;