




已阅读5页,还剩129页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章数据库技术基础 1 一 数据库的基本概念1 数据定义数据 Data 是描述信息的一种符号 是数据库中存储的对象 7 1数据库基础知识 2 2 数据的表现形式 7 1数据库基础知识 3 3 3 数据处理 DataProcessing 对所获得的数据进行转换 识别 分类 加工 整理 存储 排序和传播等 7 1数据库基础知识 4 4 4 数据库 DataBase DB 数据库 Database DB 是一种存放各种数据的仓库 这个仓库就是计算机的存储设备 数据库也是一种长期储存在计算机内有组织的 可共享的大量数据集合 7 1数据库基础知识 5 5 5 数据库管理系统及其功能 1 数据库管理系统 7 1数据库基础知识 6 6 2 数据库管理系统的主要功能 数据定义 数据操纵 数据库运行管理 数据库通信 数据库维护 7 1数据库基础知识 7 7 6 数据库系统及其组成数据库系统 DatabaseSystem DBS 是指在计算机系统中引入数据库后的系统 7 1数据库基础知识 8 8 二 数据库管理技术的发展1 人工管理阶段 20世纪50年代中期之前 7 1数据库基础知识 9 图7 2人工管理阶段应用程序与数据间关系 9 2 文件管理阶段 20世纪50年代后期 60年代中期 7 1数据库基础知识 10 图7 3文件管理阶段应用程序与数据间的关系 10 3 数据库管理阶段 20世纪60年代后期之后 7 1数据库基础知识 11 图7 4数据库管理阶段应用程序与数据间的关系 11 三 数据模型1 数据模型的定义数据模型是一种用来抽象 表示 处理现实世界中的数据和信息的工具 它满足三个要求 1 比较真实地模拟现实世界 2 容易被人理解 3 便于在计算机中实现 7 1数据库基础知识 12 12 2 数据模型分类 13 3 概念模型表示方法 实体 联系模型 Entity RelationshipApproach 简称E R模型 7 1数据库基础知识 14 14 4 E R模型的三个要素实体 客观存在并且可以相互区别的事物 可以是具体的事物 如一个学生 一本书 也可以是抽象的事物 如一次考试 属性 用于描述实体的特性 如学生用学号 姓名 性别 年龄等属性描述 联系 两个实体集之间实体的对应关系称为联系 7 1数据库基础知识 15 15 5 实体间的联系两个实体之间的联系的类型 一对一 联系 1 1 一对多 联系 1 n 多对多 联系 m n 7 1数据库基础知识 16 16 6 实体间的联系举例 一对一 联系 1 1 例如 实体集校长和实体集学校之间的联系是一对一 7 1数据库基础知识 17 17 6 实体间的联系举例 一对多 联系 1 n 例如 实体集学校和实体集学生之间是一对多的联系 7 1数据库基础知识 18 18 6 实体间的联系举例 多对多 联系 m n 例如 实体集学生和实体集课程之间是多对多的关系 7 1数据库基础知识 19 19 7 E R模型用图形方式表示实体集之间的联系 1 实体用矩形表示 在图形内部标注实体名 2 属性用椭圆表示 在图形内部标注属性名 3 联系用菱形表示 在图形内部标注联系名 使用无向边连接相关的对象 7 1数据库基础知识 20 20 8 E R模型举例 7 1数据库基础知识 21 21 层次数据模型 反映客观事物之间一对多 1 n 的关系 网状数据模型 反映客观事物之间多对多 m n 的关系 关系数据模型 把事物之间 内部 关系用二维表表示 9 三种数据模型 二维表的列称为字段二维表的行称为记录行列交叉处成为值行和列的排列次序不重要 22 一 基本概念 1 关系 二维表 2 元组 记录 3 属性 字段 4 域 属性取值范围 5 关键字 唯一标志记录 23 订单关系中的货品号定义为外键 6 外部关键字在本表不是关键字 但是在另外表中是关键字或者候选关键字 24 7 关系模式对关系的描述称为关系模式 一个关系模式对应一个关系的结构 在Access中关系模式表示表结构 其格式为 表名 字段名1 字段名2 字段名n 25 7 2关系数据库基础 26 二 关系的特点每个属性必须是不可划分的数据项 表中不能再包含表 每一列的元素必须是同一类型的数据 来自同一个域 在同一个关系中不能出现相同的属性名 任意两个元组不能完全相同行的次序和列的次序无关紧要 26 7 2关系数据库基础 27 三 关系运算 一 传统的集合运算进行并 差 交集合运算的两个关系必须具有相同的关系模式 即相同结构 27 1 并集 7 2关系数据库基础 28 28 7 2关系数据库基础 29 2 交集 29 7 2关系数据库基础 30 3 差集 30 7 2关系数据库基础 31 二 关系运算在关系数据库管理系统中 有三种常用的关系操作 选择运算 投影运算和连接运算 31 7 2关系数据库基础 32 1 选择运算选择是从行的角度对关系进行的运算 是从二维表中选择符合给定条件的所有元组 例如 从表7 1中选择学生的性别为 男 的记录 32 2 投影 Projection 从二维表中选出所需要的列 是从列的角度对关系进行的运算 例如 从表7 1中找出学生的学号和性别 结果如表7 9 7 2关系数据库基础 33 33 3 连接 Join 它是关系的横向结合 将两个二维表中的记录 按照给定条件连接起来而得到的一个新的关系的运算 生成的新关系中包含满足连接条件的记录 连接运算中有两类重要的运算 等值连接和自然连接 7 2关系数据库基础 34 34 4 等值连接从关系R和S中分别选取一个属性列 例如从两个关系中均选取B这个属性列 则等值连接是选取B属性列中值相等的那些元组 以关系R 表7 3 和关系M 表7 10 为例 R与M的等值连接结果如表7 11所示 7 2关系数据库基础 35 35 5 自然连接按照字段值对应相等的条件进行的连接操作称为等值连接 自然连接是去掉重复属性的等值连接 以关系R 表7 3 和关系M 表7 10 为例 R与M的自然连接结果如表7 12所示 7 2关系数据库基础 36 36 三 关系的完整性 7 2关系数据库基础 37 通过设置主键 使其取值既不能为空也不能重复 以此保证记录 即实体 的正确性 通过定义指定字段的 有效性规则 属性 对字段的取值设置约束条件 保证记录的合法性 是指对存在引用关系的两个关系 数据表 的约束 通过建立引用关系保证数据的一致性 37 四 常用关系数据库简介1 VisualFoxProVisualFoxPro简称VFP 是Microsoft公司在FoxPro2 5的基础上推出的数据库开发软件 2 MicrosoftSQLServerMicrosoft公司推出的关系数据库 SQLServer数据库具有高性能 可扩展 先进的系统管理 支持WINDOWS图形化管理工具 事务处理功能等特点 7 2关系数据库基础 38 38 3 OracleORACLE是甲骨文公司最早提出基于SQL数据库语言的关系数据库产品之一 4 DB2DB2是IBM公司研制的一种关系型数据库系统 DB2主要应用于大型应用系统 具有较好的可伸缩性 7 2关系数据库基础 39 39 5 AccessMicrosoftOfficeAccess是由微软发布的关联式数据库管理系统 是一种小型的关系数据库管理系统 6 SQLiteSQLite是一款轻型的 开源数据库管理系统 7 2关系数据库基础 40 40 7 PostgreSQL由美国加州伯克利分校开发的一款开源关系型数据库管理系统 PostgreSQL数据库支持事务 存储过程 并发控制 性能优异 8 MYSQLMySQL是瑞典的MySQLAB公司开发的一款功能强大 使用灵活 多用户 多线程的开源数据库管理系统 7 2关系数据库基础 41 41 一 SQL概述SQL是一种功能比较齐全的关系数据库语言 包含4部分 数据定义语言DDL DataDefinitionLanguage 由CREATE ALTER与DROP组成 数据查询语言DQL DataQueryLanguage 由SELECT FROM WHERE GROUPBY和ORDERBY组成 7 3结构化查询语言 SQL简介 42 数据操纵语言DML DataManipulationLanguage 由INSERT UPDATE DELETE三个语法组成 数据控制语言DCL DataControlLanguage 由GRANT DENY REVOKE等语法组成 7 3结构化查询语言 SQL简介 43 43 二 数据定义语言1 数据库的创建与删除 1 创建数据库 基本格式为 CREATEDATABASE数据库名称 例7 1 创建名为 图书管理 的数据库 CREATEDATABASE图书管理 7 3结构化查询语言 SQL简介 44 44 2 删除数据库 基本格式为 DROPDATABASE数据库名称 n 7 3结构化查询语言 SQL简介 45 45 2 表的定义 删除与修改 1 表的定义 语法格式如下 CREATETABLE 列级完整性约束 列级完整性约束 7 3结构化查询语言 SQL简介 46 46 SQL提供的数据类型 SMALLINT 半字长二进制整数 INTEGER或INT 全字长二进制整数 FLOAT 双字长浮点数 CHARTER n 或CHAR n 长度为n的定长字符串 DECIMAL p q 十进制数 共p位 其中小数点后有q位 O q p 15 VARCHAR n 最大长度为n的变长字符串 DATE 日期型 格式为 YYYY MM DD TIME 时间型 格式为 HH MM SS 7 3结构化查询语言 SQL简介 47 47 列级完整性约束 取值有NULL 空 UNIQUE 取值惟一 而NOTNULLUNIQUE表示取值惟一 不能取空值 展开格式 NOTNULL NULL DEFAULT字段 PRIMARYKEY UNIQUE FOREIGNKEY REFERENCES CHECK 条件 7 3结构化查询语言 SQL简介 48 48 表级完整性约束 主要有PRIMARYKEY 定义主码 FOREIGNKEY 定义外码 CHECK三个子句 展开格式 PRIMARYKEY FOREIGNKEY 外键名 REFERENCES CHECK 条件 7 3结构化查询语言 SQL简介 49 49 2 修改基本表格式 ALTERTABLE ADD 数据类型 完整性约束 DROP MODIFY 7 3结构化查询语言 SQL简介 50 50 3 删除基本表格式为 DROPTABLE 7 3结构化查询语言 SQL简介 51 51 三 数据操纵1 数据查询查询数据的格式如下 SELECT ALL DISTINCT FROM WHERE GROUPBY HAVING ORDERBY ASC DESC 7 3结构化查询语言 SQL简介 52 52 例7 4 查询作者为 王五 的全部图书的价格 SELECTPriceFROMBookWHEREAuthor 王五 7 3结构化查询语言 SQL简介 53 53 2 数据更新 1 插入数据数据插入语句是INSERTINTO 基本格式 INSERTINTO VALUES 7 3结构化查询语言 SQL简介 54 54 例7 5 向图书表Book 图书编号 书名 作者 出版社 定价 中插入一条新图书记录 INSERTINTOBookVALUES 20120018 数学分析 王三 人民出版社 80 7 3结构化查询语言 SQL简介 55 55 2 修改数据命令的格式如下 UPDATESET WHERE 7 3结构化查询语言 SQL简介 56 56 例7 6 将图书号为 20120016 的作者修改为王五 UPDATEBookSETAuthor 王五 WHEREBno 20120016 7 3结构化查询语言 SQL简介 57 57 3 删除数据命令的格式 DELETEFROM WHERE 7 3结构化查询语言 SQL简介 58 58 例7 7 从图书表中删除图书号为 20120018 记录 DELETEFROMBookWHEREBno 20120018 7 3结构化查询语言 SQL简介 59 59 60 文件 新建 一 数据库的创建 60 1 利用模板创建数据库 例7 8 利用 罗斯文 样本模板创建一个名为 罗斯文 的数据库文件 并将它保存在 D Access2010 中 7 4Access2010 61 图7 8选择罗斯文数据库模板 2 创建空数据库 例7 9 创建一个名为 教学管埋 的数据库文件 7 4Access2010 62 图7 12创建 教学管理 数据库 62 二 数据库对象1 数据表数据表简称表 是数据库中最基本也是最重要的对象 表是由行和列组成的一个二维表 每一行称为一条 记录 每一列称为一个 字段 7 4Access2010 63 63 2 查询查询可以作为窗体 报表及其他查询的数据源 查询的结果以二维表的形式展示 但查询不是数据表 查询的对象可以是一个数据库中的一个表或多个表中存储的数据信息 7 4Access2010 64 64 查询有五种视图模式 数据表视图 数据透视表视图 数据透视图视图 SQL视图 设计视图 五种不同类型的查询 分别是选择查询 参数查询 交叉表查询 操作查询和SQL查询 通常使用查询向导和查询设计按钮两种方法来创建查询 7 4Access2010 65 65 3 窗体向用户提供可视化的操作界面来实现数据的输入 输出 数据来源可以是通过键盘直接输入 也可以来自数据表或查询 窗体对象共有6种视图 窗体视图 数据表视图 数据透视表视图 数据透视图视图 布局视图 设计视图 7 4Access2010 66 66 4 报表报表主要用于数据的显示和打印 数据来源可以是表 查询 也可以是SQL语句 也不存储数据 只是在运行报表时才将信息收集起来 4种视图 报表视图 打印预览 布局视图和设计视图 7 4Access2010 67 67 5 宏宏是一个或多个宏操作命令组成的集合 宏的主要功能是让程序自动执行相关的操作 7 4Access2010 68 68 7 4Access2010 69 三 表的创建1 利用 表格工具 上的 字段 选项来创建表 图7 14使用 字段 选项创建表图 69 7 4Access2010 70 2 利用 创建 选项中的 表格 组建立表 7 15使用 表格 组建立表 70 7 4Access2010 71 3 利用 外部数据 选项卡中的 导人并链接 组建立表 图7 16使用 导人并链接 来建立表图 71 7 4Access2010 72 例7 10 按照表7 13给出的表结构 在新建的 教学管理 数据库中使用输入数据的方法创建 课程表 72 7 17教学管理中的 表1 对象 7 4Access2010 73 具体操作步骤如下 1 打开 教学管理 数据库 73 7 17教学管理中的 表1 对象 7 4Access2010 74 2 设置 课程号 字段 74 7 4Access2010 75 4 添加字段 课程名 数据类型 文本 75 7 4Access2010 76 5 添加 课程类型 字段 数据类型是查阅向导类型 76 7 4Access2010 77 6 在弹出的 查阅向导 对话框中 输入三种课程类型 77 7 4Access2010 78 7 重复步骤 2 和 3 依次设置字段名为 课程类型 大小为5和默认值 8 添加字段 学分 它的数据类型是 查阅向导 步骤同 5 78 7 4Access2010 79 9 将数据记录输入完毕后 注意将文件进行保存 图7 21输入课程信息后的 课程表 79 4 利用字段模板创建表 7 4Access2010 80 例7 11 在 教学管理 数据库中 按照表7 14的表结构设计 创建名为 学生表 的表 80 7 4Access2010 81 具体操作步骤如下 1 单击 创建 选项卡中的 表 81 7 4Access2010 82 2 将ID字段修改为学生表的主键 学号 82 7 4Access2010 83 3 添加 姓名 和 性别 字段 83 7 4Access2010 84 4 添加 出生年月 字段 84 5 添加 班级 字段 方法同步骤 3 7 4Access2010 85 85 6 输入数据 保存表 将 表1 命名为 学生表 如图7 23所示 7 4Access2010 86 图7 23 学生表 数据表视图 86 5 利用数据导入的方式创建表用户可以导入Excel表 Access数据库 ODBC数据库 XML文档 文本文档等其他数据源数据 7 4Access2010 87 87 7 4Access2010 88 例7 12 按表7 15教师表的表结构设计 将一个存有教师信息的Excel文件作为导人数据源 在 教学管理 数据库中创建一个名为 教师表 的表 88 7 4Access2010 89 具体操作步骤如下 1 打开 教学管理 数据库 89 2 将源数据导入当前数据库的新表中 7 4Access2010 90 图7 24 获取外部数据 对话框 90 3 单击 下一步 按钮 7 4Access2010 91 91 4 选择 我自己选择主键 将 教师编号 作为主键 7 4Access2010 92 92 5 在向导的最后一页 指定要 导入到表 的名称 本例为 教师表 然后单击 完成 按钮 7 4Access2010 93 93 6 利用表设计器创建表利用表设计器创建表就是在设计视图中创建表 在设计视图中创建表的步骤 创建表的结构切换至数据表视图输入记录数据 7 4Access2010 94 94 四 表的编辑与维护1 表的复制 例7 13 将 教学管理 数据库中的 教师表 复制一份 复制后的表名为 教师表 原表 7 4Access2010 95 95 具体操作步骤如下 1 打开 教学管理 数据库 选中 教师表 分别接下和组合键进行复制和粘贴 或者右击鼠标 选择 复制 和 粘贴 命令进行复制和粘贴 7 4Access2010 96 96 2 输入 教师表 原表 7 4Access2010 97 输入 教师表 原表 单击 确定 97 2 创建空数据库 例7 9 创建一个名为 教学管埋 的数据库文件 7 4Access2010 98 教师表 原表 98 2 表的重命名在导航窗格中选中要重新命名的表 然后单击右键 选择快捷菜单中的 重命名 命令 直接输入新的表名 最后按回车键即可 7 4Access2010 99 99 3 修改表结构在设计视图下 可以实现对表结构的修改 它是对数据库中表对象中的字段进行相关操作 如添加 修改 删除字段以及设置字段的属性等 7 4Access2010 100 100 4 表的删除在删除表操作之前 必须先关闭要删除的表对象 在导航窗格中选中该表 单击右键 选择快捷菜单中的 删除 系统会弹出确认删除对话框 7 4Access2010 101 101 五 查询1 查询的概念 查询 是Access2010数据库中的一个重要的数据库对象 是依据一定的条件在数据源中筛选或操作数据 2 查询的功能按照不同的方式来查看 更改 分析和统计数据可以从一个或多个表中找出符合条件的记录执行数据计算 合并不同表中的数据添加 更改或删除表数据 7 4Access2010 102 102 3 查询的类型在Access2010中 将查询分为5类 1 选择查询 2 参数查询 3 交叉表查询 4 操作查询 5 SQL查询 7 4Access2010 103 103 4 查询的视图在Access2010中 查询有五种视图 1 数据表视图 2 数据透视表视图 3 数据透视图视图 4 SQL视图 5 设计视图其中数据表视图 SQL视图和设计视图支持用户的操作 7 4Access2010 104 104 1 数据表视图数据表视图用于浏览查询的运行结果 该视图中的包含的数据 是根据SQL语句对相关的表进行运算操作所得到的结果 如图7 28所示 7 4Access2010 105 图7 28查询的数据表视图 105 2 SQL视图SQL视图是用于显示和编辑查询对象所对应SQL字符串 如图7 29所示 在这种视图中 用户可以直接编写SQL语句来创建查询 可以查看当前查询对应的SQL语句 可以直接修改SQL语句 7 4Access2010 106 图7 29查询的SQL视图 106 3 设计视图设计视图是用于查询对象的字段结构与属性的窗口 如图7 30所示 在查询设计视图中 用户使用可视化的手段进行创建和修改查询 7 4Access2010 107 图7 30查询的设计视图 107 4 数据透视图视图 7 4Access2010 108 图7 31视图类型 108 将设计视图切换为如图7 32所示的数据透视图视图 7 4Access2010 109 图7 32数据透视图视图 109 5 数据透视表视图从如图7 31所示的视图类型中选择 数据透视表视图 将数据透视图视图切换为如图7 33所示的数据透视表视图 7 4Access2010 110 图7 33查询的数据透视表视图 110 4 查询的创建方法在创建查询之前 尤其是查询中的字段来自多个表 即多表查询 时 这些表应该事先建立好关系 创建查询的方法主要有以下3种 1 利用查询向导创建简单选择查询 交叉表查询 查找重复项查询和查找不匹配项查询 7 4Access2010 111 111 2 利用查询设计视图利用该方法可以创建和修改各类查询 是创建查询的主要方法 3 使用SQL查询语句在查询的SQL视图下 直接输入SQL语句来编写查询命令 利用该方法可以创建所有类型的查询 尤其是在查询设计视图下无法实现的查询 如数据定义查询 联合查询和传递查询等 7 4Access2010 112 112 5 使用SQL查询语句创建查询举例 1 使用SQL语句创建无条件查询 例7 15 在 教学管理 数据库教师表中 查询教师 杜六 的基本工资 7 4Access2010 113 113 7 4Access2010 114 图7 34无条件SQL查询语句图7 35无条件查询结果 114 2 使用谓词IN或NOTIN创建条件查询谓词IN可以用来查找属性值属于指定集合的元组 与IN相对的谓词是NOTIN 用于查找属性值不属于指定集合的元组 例7 16 在 教学管理 数据库教师表中 查询教师 胡六 阿二 的性别和出生日期 7 4Access2010 115 115 7 4Access2010 116 图7 36使用谓词IN创建条件查询SQL语句图7 37使用谓词IN创建条件查询结果 116 3 使用谓词LIKE创建条件查询使用谓词LIKE创建条件查询的格式 NOT LIKE 其含义是查找指定的属性列值与匹配串相匹配的元组 匹配串中可以含通配符 和 星号代表任意长度 长度可以为0 的字符串 问号代表任意单个字符 7 4Access2010 117 117 例7 17 在 教学管理 数据库教师表中 查询所有姓阿的教师的姓名 性别和出生日期 7 4Access2010 118 118 4 连接查询如果查询目标涉及到两个或几个关系 这时就需要进行连接运算 用户在FROM子句中指出关系名称 在WHERE子句中写明连接条件即可 7 4Access2010 119 119 例7 18 查询所有选了课程的学生的姓名和班级 7 4Ac
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工面试题库及答案
- 校园乘船安全知识培训课件
- 骨科护理考试题及答案
- 校准基础知识培训课件
- 2025年福建平潭综合实验区文旅发展集团有限公司招聘考试笔试试题(含答案)
- 装饰装修工程施工技术考核试题题库及答案
- 专业技能培训天车工考试题及答案
- 医院感染暴发报告及处置管理规范试题与答案
- 静脉输液理论知识培训考核试题(附答案)
- 2025医院医疗卫生法律法规考试题库及答案
- 23CG60 预制桩桩顶机械连接(螺丝紧固式)
- 几何中种动角问题的两种考法(含答案解析)人教版七年级数学上册提分必刷
- 中国银行中银国际证券股份有限公司2023年校园招聘111人笔试历年难、易错考点试题含答案解析-1
- 2017版银皮书(中英文完整版)FIDIC设计采购施工交钥匙项目合同条件
- 物业承接查验操作指南
- 蒋小华-问题分析与解决
- 矿泉水智能制造系统
- 燃烧器控制器LMG说明书
- 游泳初级教员资格考试题库(含答案)
- GB/T 250-2008纺织品色牢度试验评定变色用灰色样卡
- GB/T 16919-1997食用螺旋藻粉
评论
0/150
提交评论