ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:85.30KB ,
资源ID:19915      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19915.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库系统实验课知识点讲解.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库系统实验课知识点讲解.docx

1、数据库系统实验课知识点讲解数据库系统实验课知识点讲解江叶春1. 数据库基本概念2. 几种键的概念3. 数据完整性约束4. DDL和DML5. JOIN6. Group By和聚集函数7. 数据库设计8. 多重性约束9. ER模型向关系模型的映射10. 规范化一、 数据库基本概念数据库:长期存储在计算机内、有组织、可共享的大量数据的集合。数据库管理系统:位于用户与操作系统之间的一层数据管理软件。数据库系统:计算机引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、数据库管理员构成。二、 几种键的概念事实上,关系模型不允许表格包含有重复记录。所以,一个表格里字段或者列的值必须是唯一的。唯一

2、性可以通过检查key(关键字)来确定,关键字可以由一个单列或者列的组合构成,这样的列叫做composite key(复合关键字)。关键字有很多不同的类型:studentNo(PK)ID(AK)namePhoneaddresscourseNo(FK)a) 超关键字(Super Key):又称超键或超码,是能够唯一标识关系中每个元组的一个或一组属性的集合。超关键字能够唯一标识关系中的每个元组,但超关键字中可能包含多余属性,而人们一般对能够唯一标识元组的最小属性集合感兴趣,由此产生了候选关键字的概念。b) 候选关键字(Candidate Key):又称候选键或候选码,它本身是超关键字但其任何子集都不

3、是超关键字。或者说候选关键字是能够唯一标识关系中每个元组的一个或一组最小属性的集合。一个关系中也可能会有多个候选关键字。c) 主关键字(Primary Key):又称主键或主码,是被选为唯一标识关系中各元组的候选关键字。d) 辅关键字(Alternate Key):又称辅键或辅码或备选键,是没有被选为主关键字的候选关键字。e) 外关键字(Foreign Key):又称外键或外码,设F为关系R中的某个属性或属性组,F可能不是关系R的候选键,但如果F与关系S(关系S与R可以是同一个关系)的主键PKs相对应(F取值与PKs取值相一致),则称F是关系R的外键。 这里列出来的关键字的类型并不是相互排斥的

4、;一个关键字可以同时被归入多个类。从定义上说,每个表格必须至少有一个主关键字。三、 数据完整性约束(1)实体完整性实体完整性约束要求基本关系的所有主关键字属性都不能为空,而不是主关键字整体不能为空。例如,对于学生选课关系(学号,课程号,成绩),显然,学号与课程号的组合“学号,课程号”为主键,按照实体完整性的要求,学号和课程号两个属性中的任何一个都不能出现空的现象。根据定义,主关键字是能唯一标识元组的最小属性集合,这就意味着主关键字的任何子集都不能唯一标识元组。如果允许主关键字的某个属性为空,这就暗示了唯一标识元组并不需要所有主关键字属性,这与主关键字的定义相矛盾。这也说明了关系模型实体完整性的

5、约束是合理的。(2)参照完整性如果一个关系中存在某个外关键字,则该外关键字属性的取值应该与它所引用的主关系中的对应属性取值一致,或者为空。其实我们前面在介绍外关键字概念的时候,已经说明了这个问题。换言之,关系模型的参照完整性约束是通过外关键字来体现的。(3)用户定义完整性任何关系数据库系统都应该支持实体完整性和参照完整性,除此之外,不同的数据库系统根据其应用环境和领域的不同,可能还需要一些特殊的约束条件,用户定义完整性也称企业约束,就是为了满足这些特殊约束条件而定义的,它是让用户根据具体应用环境和领域来指定数据所需要满足的附件约束。用户定义完整性由数据库的用户根据数据库使用环境和领域所指定的附

6、加规则。例如,学生关系模式Student(学号, 姓名, 身份证号, 年龄, 性别, 学院编号, 入学年份 )中,根据应用环境要求,还可能要求学号属性必须为8位数字,或者要求年龄不能超过30岁等等。这些约束条件都是用户根据具体应用环境而附加的规则。关系模型应该向用户提供定义这类完整性约束的机制和方法,并能够按照用户定义的完整性约束条件对数据进行检验。不过,各种具体DBMS对用户定义完整性的支持程度可能因系统而异,有时需要应用程序和DBMS共同来保证用户定义完整性。四、 DDL和DML1.DDL(数据定义语言):对结构进行的操作。比如create,drop,alter等。2.DML(数据操纵语言

7、):对具体的数据进行的操作。比如update,delete,insert等。五、 JOIN基本操作Join操作基本分为4大类:1. 连接:在连接条件使用除等于运算符以外的其它比较运算符比较被连接的列的列值。这些运算符包括、=、=、!和。2. 等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列。不需要同名属性,可以使用using或on子句来指定连接条件。3. 自然连接:同名属性的等值连接,故无须自己添加连接条件,并删除连接表中的重复列。4. 外连接:返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接或左连接)

8、、右表(右外连接或右连接)或两个边接表(全外连接)中的所有数据行。left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录;right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录。1) 左连接2) 右连接3) 全连接)Join操作的共性:第一步均为将所有参与操作的表进行了一个笛卡儿积,然后才依据各连接条件进行记录的筛选SQL select * from employees;NAME DEPARTMENT_ID SALARY Getz 10 3000Davis 20 1500 King 202200Davis 30 5000Kochhar500

9、0SQL select * from departments; DEPARTMENT_ID DEPARTMENT_NAME 10 Sales 20 Marketing 30 Accounts 40 Administration-Inner join-等值连接:不需要同名属性,可以使用using或on子句来指定连接条件,包括其中的重复列。SQL select * from employees e inner join departments on .department_id=d.department_id;SQL select * from employees,departments Wher

10、e e.department_id= d.department_id;说明:内连接与自然连接基本相同,不同之处在于自然连接只能是同名属性的等值连接,而内连接可以使用using或on子句来指定连接条件-Natural join-SQL select * from employees natural join departments;说明:自然连接是通过对参与表关系中所有同名的属性对取等(即相等比较)来完成的,故无须自己添加连接条件与外连接的区别在于对于无法匹配的记录外连接会虚拟一条与之匹配的记录来保全连接表中的所有记录,但自然连接不会-Left outer join-SQL select * f

11、rom employees e left outer join departments d on e.department_id=d.department_id;-Right outer join-SQL select * from employees right outer join departments using(department_id);-Full join-SQL select * from employees full join departments using(department_id);说明:1外连接必须使用on或using子句提供相应的连接条件2不能为using子句

12、中所列举的列指定表别名,即使在group by和select子句中也是如此3外连接规则:左连右补,右连左补,全连左右合并如:对表departments表进行右连接时,在两表完成笛卡儿积后再依据连接条件 using(department_id)来筛选两表中department_id值相同的记录,但对DEPARTMENT_ID=40,employees表中没有与之匹配的记录,按常理此DEPARTMENT_ID=40所对应的记录将被抛弃,但就是为了保全连接表(departments表)中的所有记录就必须在employees表中虚拟出一条与之匹配的记录来保全连接表的所有记录,当然这条虚拟的记录显示时值

13、全为null。六、 聚集函数和Group By AVG 函数返回数值列的平均值。NULL 值不包括在计算中。COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入);COUNT(*) 函数返回表中的记录数;COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目;FIRST() 函数返回指定的字段中第一个记录的值。(提示:可使用 ORDER BY 语句对记录进行排序。)MAX 函数返回一列中的最大值。NULL 值不包括在计算中。(MIN 和 MAX 也可用于文本列,以获得按字母顺序排列的最高或最低值。)SUM函数返回数值列的总数(总额)。G

14、ROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。group by 有一个原则,就是 select 后面的所有列中,没有使用聚集函数的列,必须出现在 group by 后面。七、 数据库设计一般情况下,数据库设计包含三个主要阶段,它们分别是:概念设计、逻辑设计和物理设计。这三个设计阶段中的每个阶段将产生不同的结果模型,具有不同的用途和目的。1)概念设计概念设计是根据企业的目标,针对所设计系统中的数据需求建立模型的过程,它是数据库设计的第一个阶段,也是整个数据库设计的关键。在此阶段,通过对用户需求进行综合、归纳与抽象,形成一个独立于所有物理因素的模型,并且完全独立于实现细节,例如,数据库系统在实现中将采用的DBMS软件、应用程序结构、编程语言、硬件平台或其它任何实现上的考虑。概念设计的目的是充分挖掘系统对数据的需求,并进行归纳和抽象,在此基础上所建立的模型应该容易为设计人员和用户所理解,从而为设计人员和用户之间提供一个交流的桥梁,同时,该模型应该能够较准确表达用户需求,减少二义性。目前常用的模型是实体联系(Entity-Relationship,ER)模型,后

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1