资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三部分 数据库基础(1),任课教师:姚瑞霞 yaorxcic.tsinghua.edu 办公电话:62782934 办公室:东主楼8区309室 教务老师:戴音 62773240,数据库基础知识,数据库系统概述 现实世界数据的描述实体联系模型 数据库支持的数据模型关系模型 使用Access完成建表操作,数据库在改变我们的生活,超市管理 交易的便捷 企业的信息管理 银行转帐 飞机订票 网上购物 电子政务 ,欢迎光临 清华学生超市 1/10/05 销售收据 4:55PM - 商品编码 商品名称 数量 金额 - 502009 钙锌切片 1 2.30 124074 圣厨香味挂 1 3.90 121064 超级福满多 1 5.00 - 总计 - 数量 总计金额 折扣 合计 3,0 11.20 0.00 11.20 - 支付 - 现金 11.20 - C.ID 009 BILL:747898 - 谢谢惠顾 欢迎再来,校园中的信息系统,迎新系统,选课系统,网络学堂,学籍管理,审查毕业,排课系统,社会的信息化依托数据库,在信息化社会中,可为我们所利用的数据量呈爆炸型的增长。 任何一个企业的成功之道都离不开它能够准确、及时地获取、分析和处理日常业务中涉及到的数据。 而要存储、管理和利用如此大量的信息,不使用数据库几乎是不可能的。,计算机数据管理的发展,人工管理 没有管理数据的软件 计算机 以计算为主 操作系统 以文件为单位,对数据进行管理 计算机 不但可以计算,而且可以存储和管理信息 文件系统的局限性 数据库系统 数据管理的专用技术 数据库系统是计算机信息系统的基础和主要组成部分。,数据库技术,数据库技术所研究的问题: 如何科学地组织和存储数据 如何高效地获取和处理数据 数据库特点 以数据为中心组织数据,形成综合性的数据库,为各应用共享。 数据冗余小,不但节省存储空间,也有利于保持数据的一致性 具有良好的用户接口,用户可方便地开发和使用数据库。 提供了数据的安全性、完整性等保证。,数据库技术的发展趋势,大型化 需要存储的数据量越来越大(GBTB) 需要同时接纳更多的用户(在线用户) 大型数据库技术发展(存储技术、并行处理技术等) 大型数据库产品:Oracle、DB2、SQL Server 小型化 今天的PC机功能已经可以和过去的大型机相媲美 微机数据库技术的发展 微机数据库已经作为一种通用的工具。 微机数据库代表:Access、Paradox、FoxPro等。,数据库的管理系统,数据库是数据的仓库,可以长期地保存大量数据。 数据库管理系统(DBMS) 是协助用户管理和使用数据的软件,对每个数据库都是必须的。 DataBase Management System,数据模型,描述现实世界中的数据 实体联系模型,数据库支持的数据模型 关系模型,转换,认识抽象,现实世界,实体联系模型,Entity Relationship Model :简称ER模型 实体:客观存在、并可以相互区分的事物 学生实体:张三、李四 教室实体:6A213、6B201 实体集:对实体进行分类,抽象出实体集(如学生) 实体集的属性:一类实体所具有的共同属性。 学生实体集属性:学号、姓名、性别、出生年月 属于一个实体集的各实体都用同一组属性来描述。 实体集的码:实体集中唯一标识一个实体的属性或属性组 学生实体集的码:学号(姓名?),实体联系模型,实体集之间的联系 现实世界中的事物之间是有联系的,这种联系必然要反映到ER模型中。 一对一联系(1:1) 对于实体集A中的每一实体,实体集B中至多有一个实体与之联系。反之亦然。,系 系主任,实体集之间的联系,一对多联系(1:N) 对于实体集A中的每一实体,实体集B中有N(0)个实体与之联系;对于实体集B中每一实体,实体集A中至多只有一个实体与之联系。 多对多联系(M:N) 对于实体集A中的每一实体,实体集B中有N (0)个实体与之联系; 对于实体集B中每一实体,实体集A中有M (0)个实体与之联系。,系 学生 课程,1:N,M:N,教务系统 数据分析,实体集: 系主任、系、学生、课程 联系: 系主任 : 系 1:1 系 : 学生 1:N 学生 : 课程 M:N,ER模型的图形表示 ER图,包含,负责,选修,1,1,N,M,N,1,成绩,数据库中的数据模型,关系数据库,关系模型,实体集与二维表有着自然的对应关系 实体集名 表名 实体集属性 表列 实体集码 表的主码 实体表的行(表中存储的记录),ER模型 关系模型,系,系号 系名 电话,系,表的结构,表中数据,ER图转换为关系表(1),表名(列名1,列名2,) 系主任(证件号,姓名,职称) 系(系号,系名,电话) 学生(学号,姓名,性别,出生年月) 课程(课程号,课程名,学分) 联系的信息如何存储 ? 联系的信息也放在二维表里 !,联系的信息 1:1,在其中一个表中增加1列,存放另一表的主码 系表和系主任表之间存在1:1的联系,联系的信息 1:n,在n端表中增加一列,存放另一个表的主码 系表和学生表之间存在1:n的联系,联系的信息 m:n,新建一个表,专门存储 m:n 的联系信息 学生表和开课表通过选课表建立了m:n的联系 学生表和选课表是1:n的联系 开课表和选课表是1:n的联系,主码,主码,外来码,外来码,ER图转换为关系表(2),系主任(证件号,姓名,职称) 系(系号,系名,电话,系主任) 学生(学号,姓名,性别,出生年月,系号) 课程(课号,课名,学分) 选课(学号,课号,成绩),理解关系模型,理解二维表的行列结构 行 实体信息 列 属性 理解二维表的集合概念 二维表是一个集合,每行为集合的一个元素 理解二维表之间的联系(外来码),在Access中完成建表,导航窗格,功能区,表设计视图 SQL语句,建立表表设计视图,建立表表设计视图,director表结构: dirno:主码、文本 5、索引(有(无重复) dirname:文本 10 title:文本 10 dep表结构: dno:主码 文本 3、索引(有(无重复) dname:文本 10 phone:文本 4 director:文本5、索引(有(无重复) course表结构: cno:主码 文本 3、索引(有(无重复) cname:文本 20 credit:数字 整数,建立表使用SQL语句,操作过程 创建查询对象 进入SQL视图 编写 create table 语句,执行该语句。,建student表 create table student (sno char(6) primary key, sname varchar(10) not null, sex char(2) not null, birthday date, dno char(3) references dep(dno) );,建enroll表 create table enroll (sno char(6) references student(sno), cno char(5) references course(cno), grade integer, primary key(sno,cno) );,向表中插入数据,使用数据表视图 使用SQL语句,INSERT INTO student VALUES (s06001, 张小红, 女, #3/12/1989#, d01);,建立表之间的关系 关系视图,数据库工具关系按钮:调出关系视图,在视图中添加或隐藏表:快捷菜单 显示表 / 隐藏表 可视化建立表的关系:鼠标拖动 (主码列外来码列),建立表之间的关系 关系视图,建立关系,定义参照 完整性约束,关系表操作投影与选择,在实际应用中,用户希望看到的往往是一个表的部分数据,而不是整个表。 选择 从关系表中找出满足条件的行(指定选择条件) 投影 从关系表中选取部分列(指定需要哪些列),关系表操作连接,连接 将两个表相关记录连接起来,形成跨表的大记录。 连接方式 通过 “外来码主码” 实现连接 公共列上具有相同值的记录连接在一起 连接条件 : student.dno=dep.dno,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号