码迷,mamicode.com
首页 > 数据库 > 详细

【数据库】

时间:2017-03-05 10:36:42      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:null   传统   集合   循环   数据   查询   bsp   关系数据库   右外连接   

一:关系数据库的描述

1:实体间的联系: 1:1、1:n、m:n

 

2:候选码:关系中某一属性组的值能唯一标识一个元组(记录)而其子集不能,则该属性组所包含的属性们称为候选码。

主码:若有多个候选码,选一个作为主码。

全码:关系模式的所有属性都是候选码,称为全码。

 

二:关系代数

1:传统集合运算

并:两种关系R、S的并集由R跟S的记录合并得到;

差:R-S的表记录由R表中有而S表中没有的记录组成;

交:R、S的交集由既属于R表又属于S表的记录组成;

笛卡尔积:若R有k1条记录,S有k2条记录,则R、S的笛卡尔积有k1*k2条记录,每条记录有r+s列,前r列为R的记录,后s列为S的记录。即:遍历R中每一条记录,在其后面依次拼接S表的记录。共循环了k1*k2次。

 

2:专门关系运算

选择:从表中选出符合条件的元组(记录)组成结果表;(行查询)

投影:从表中选出若干属性列组成结果表;(列查询)

连接:从两个关系的笛卡尔积中选出属性间满足某条件的元组。

    等值连接:从R、S关系的笛卡尔积中,选取R中某些属性值与S中某些属性值相等的元组;

    自然连接:一种特殊的等值连接,选出R、S中同名的属性组的值相等的元组,并在结果中去掉重复的属系列留下一个即可;

         通过自然连接利用两个关系某相同属性把两个表拼接在了一起,此时会出现以下情况:

         悬浮元组:在R、S通过属性B的值拼接时,如果出现R中的某B属性值bn在S中没有相等值,则此时bn所在元组就会被舍弃,不加入结果表中。

         外连接:如果把悬浮元组也加入结果表中,则把bn属性所在行在另一个表中取不到值的列设为NULL值。

         左外连接:只保留左边关系R的悬浮元组。即:R中bn在S中无等值,把R中bn元组加入结果表,元组中属于S的属性列赋NULL值。

         右外连接:只保留右边关系S的悬浮元组。即:S中的bn在R中无等值,把S中bn所在元组加入结果表,该元组中属性R的属性列赋NULL值。

 

三:SQL语言

 

【数据库】

标签:null   传统   集合   循环   数据   查询   bsp   关系数据库   右外连接   

原文地址:http://www.cnblogs.com/ygj0930/p/6504465.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!