7.附2创建数据库
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分为两个表: 教师登记表:教工号,姓名,性别,职称,电话 教师课程表:ID,教工号,课程号 【注】ID是给教师课程表添加的主码。 则上例中数据放在两个表中:
教工号 姓名 性别 4382 王大中 男 职称 电话 ID 教工号 课程号 讲师 3565678 1 4382 00667 2 4382 00789
3. 字段的“常规”属性
字段大小:文本长度 或数值范围 格式:Number、 Date/Time、 Currency和Yes/No 类型有预定义格式, 也可设置格式 小数位数:小数型 (数字、货币)数 据的小数位 输入法模式:可设为 输入时自动切换到 某种输入法
输入掩码:输入数据时的格式,可用“输入掩码向导” 来编辑输入掩码 标题:数据表视图或控件中显示字段时所用的标题。 用于在字段名意义不明确时再设置一个标题 默认值:添加新记录时,自动加入到字段中的值 有效性规则:限制输入数据的表达式,如<100、 Like ?#等。可使用表达式生成器来创建 有效性文本:数据不符合有效性规则时显示的信息 必填字段:是否必须输入数据 允许空字符串:是否允许输入空字符串(长度为0) 索引:是否进行索引及索引方式。 索引:加快查询和排序速度,但更新操作变慢 索引方法:无:字段不索引。 有(有重复):索引、允许重复值。 有(无重复):索引、不允许重复值。
S4:确定主码 学生登记表:学号 教师课程表:教工号 课程名称表:课程号 学生成绩表:学号+课程号 【注】可增加一个值为序列号的字段作为主码
S5:优化设计 问题:教师课程表,若一人讲授多门课程,则有重复 数据,如:
教工号 姓名 性别 职称 课程编号 4382 王大中 男 讲师 00667 4382 王大中 男 讲师 00789 电话 3565678 3565678
确保数据的完整性: 参照完整性:输入或删除记录时,为维持表间已定义的 关系而必须遵循的一个规则系统。 若实施了参照完整性,则在将与基本表无关的记录加入 相关表时,Access会警告。若要从基本表中删除记录, 相关表中却有对应记录时,Access会防止删除。 设置参照完整性的条件: 来自于主表的匹配字段是主码或具有唯一的索引 相关字段的数据类型相同。例:自动编号与长整型,均 为同步复制 ID的自动编号与数字字段可相关 。 两个表都属于同一个Access数据库 实行参照完整性后必须遵守的规则: 不能将值输入到相关表的外码字段中,…… 若相关表中有匹配记录,不能从主表中删除它
2. 表的两种视图
表的两种视图: 设计视图:创建及编辑表的结构,即定义字段名,数 据类型,宽度,设置字段默认值,格式等 数据表视图:查看,添加,删除,编辑表中数据。
设计视图 表视图
3. 新建表对话框
打开设计视图 启动表向导
4. 使用向导创建表的例子
一般步骤
启动向导 选择字段 修改字段名称 确定表名 确定主码 完成
先创建空数据库, 然后再分别添加对象
2. 创建空白数据库
3. 使用向导创建数据库
动
4. 打开数据库的命令方式
打开命令 可直接打开的库 选择打开方式
5. 使用收藏夹打开数据库(对象)
选择:视图|工具栏|Web 单击:收藏夹按钮右侧▼ 选择:列表:添至收藏夹 收藏夹工具条 收藏夹内容列表
收藏夹内 容列表
5. 选择数据类型时应注意的问题
备注型、超链接型和OLE对象型字段不能索引。 若在表中输入数据后更改字段的数据类型,则在保存 表时,由于进行大量数据转换,时间较长;若新的 “数据类型”属性的设置与段原数据类型冲突, 可能会丢失某些数据。 Number、Date/Time、Currency和Yes/No类型具有预 定义格式。可设置格式,但OLE对象型除外
主码 外码
主码
通表 过与 码表 来之 实间 现的 关关 联系
3. 主码与外码
主码(主关键字):表中一个或多个字段,其值惟一地 标识一条记录。在两个表的关系中,主码用来在一个 表中引用来自于另一个表中的特定记录。 系统不允许任何重复值或Null值进行主码字段中。 主码的性质: 主码不能为空,否则将失去对某些记录的控制和访问 主码不能重复,否则主码所标识的记录将失去唯一性 主码不能修改。它不仅标识表中的记录,而且经常要 与其他表中的字段进行关联。如果硬要修改,很容易 给其所在的表以及其他相关的表造成意想不到的错误 外码(外部关键字) :也是表中的一个或多个字段,外 码的值与相关表的主码相匹配。
4. 字段的查阅属性
显示控件:选择值的控 件:组合框或列表框 行来源类型:从其他表 或查询还是值列表中得 到数据 行来源:得到数据的值 列表或查询语句 绑定列:哪个列作为控 件的值
产品:供应商ID 供应商表:供应商ID→公司名称
SELECT DISTINCTROW [供应商ID],[公司名称] FROM 供应商 ORDER BY [公司名称];
确定表之间的关系 优化设计 输入数据并新建其他数据库对象
使用Microsoft Access的分析工具
S1:明确建库目的与功能要求 实现四方面信息的综合管理: 教师,学生,课程,学习成绩 教师可以查看学生的简况,成绩,课程 学生可以选择教师,课程和查看成绩 S2:确定数据库中的表 按下列原则对信息进行分类: 表中不含重复信息,且信息不应 在表之间复制 每条信息只保存在一个表中 每个表只包含一个主题的数据。 学生登记表 教师课程表 课程名称表 学生成绩表
4. 关系
关系:利用两个表的共有字段 创建的关联性。通过表间的 关联性,可将数据库中多个 表联络成一个有机的整体
表与表间的关系类型: 一对一关系:基本表每条记 录只对应相关联表中一个匹 配的记录,反之亦然 一对多关系:关系中最常用 的类型。基本表一条记录可 与相关联表中多条记录相匹 配。但相关联表一条记录只 与基本表一条相匹配
3. 数据库设计步骤
表中信息不重复且不在表间复制
一般步骤
确定新建数据库的目的 确定该数据库中需要的表 确定表中需要的字段
每个表只含一个主题的信息 字段都直接与表的主题相关
不包含推导或计算的数据
包含所需的所有信息
以最小的逻辑部分保存信息 Access中三种主码:自动编 号,单字段和多字段
明确有唯一值的字段
S6:确定表间的联系
教师登记表 教工号 教工号
学生登记表
学号
课程名称表
课程号 学生成绩表
教师授课表
课程号
3.3 数据库的创建与打开
ห้องสมุดไป่ตู้
1. Microsoft Access对话框
两种创建数据库的方 法: 使用数据库向导创 建数据库及表,查询 等各种对象
建空库
启动向导 打开库 Access启 动时自动 弹出
例:设计“教学管理”数据 库
S3:确定表中的字段 每个字段的内容均与表的主题相关 相关主题的全部数据都要表现出来。 不包含需要推导或计算的数据,要以最小逻辑部分作 为字段来保存数据。 S3.1:教师课程表分析 基本特征:姓名,性别,职称,专业特长等 其它特征:工作时间,政治面貌,电话,课程号, 所属院系等 选取:教工号,姓名,性别,职称,课程号,电话 S3.2:学生登记表分析 基本特征:学号,姓名,性别,班级,出生日期 其它特征:籍贯,政治面貌,宿舍,班级,特长等 选取:学号,姓名,性别,班级,出生日期,简历
多对多关系 :基本表一条记录可与相关联表多个记录 相匹配。相关联表中的一条记录也可与基本表的多条 记录相匹配。 这种类型的关系只能通过定义第三个表(联结表)来实 现。联结表的主码包含两个字段:来源于两个表的外 码。多对多的关系实际上是通过第三个表来实现的两 个一对多的关系。
3.2 数据库的设计
3.6 表的设计视图
1. 打开表的设计视图
表的 设计视图
2. 表设计器
第3章
表与表之间的关系 数据库的设计
创建数据库
数据库的创建与打开 使用向导创建表
字段的定义
表的设计视图 表中数据输入与操纵
3.1 表与表之间的关系
1. 表
关系数据库:二维表格表示和处理信息世界的实体集和 属性关系。 表
记 录 : 描 述 实 体 字 段 : 实 体 属 性
2. 表与表之间的关联
当前数据 库名称
6. 使用快捷方式打开数据库
3.4 使用向导创建表
1. 创建表的过程
表:关系型数据库的基本结构。在Access中,表是一种 关系特定主题的数据集合,如产品,供应商等。每个 主题对应单个表。 表的形式:记录,字段组成的二维表格。 创建一个表的过程: 创建表的结构:定义字段名,字段的类型,宽度等 填充表中的数据:各类不同数据类型的字段的填充方 式不尽相同 根据表与表间的共有字段建立联系 Access 提供多种创建表的方法
是/否(Yes/No):取两种值之一,如 Yes/No、 True/False、On/Off。大小为1位。 OLE对象(Object):可链接或嵌入其他使用OLE 协议的 程序所创建的对象,如Word文档、图象、声音等。最 多1G。对象可链接或嵌入到Access表中。但只能在窗 体或报表中使用绑定对象框来显示。 超链接(Hyperlink):超文本,用作超链接地址。超链 接最多包含三部分: 显示文本:在字段或控件中显示的文本; 地址:到文件(UNC)或页面(URL)的路径; 子地址:在文件或页面中的地址。 查阅向导(Lookup Wizard):由查阅向导创建。字段的 值来自另一个表或数据列表中,可在列表框或组合框 中选择一个数据作为其值。
1. 数据库的规划
表是Access数据库的基础,记录着数据库中的全部内容, 而其他对象只是Access提供的工具,用于对数据库进 行维护和管理。因此,设计数据库的关键是设计表 E-R模型设计:定义了数据 库结构。识别和创建数据 库中实体及其关系 实体可是具体的,也可是抽 象的。如Northwind的订 单明细:是产品实体和订 单实体间的联系
S3.3:课程名称表分析 基本特征信息:课程号,教工号,课程名称 其它特征信息:学分,课时,先修课 选取:课程号,教工号,课程名称,学分 S3.4:学生成绩表分析 基本特征信息:学号,课程号,平时成绩,考试成绩 其它特征信息:学分,教工号,课程名称 选取:学号,课程号,平时成绩,考试成绩
2. 字段的数据类型
Access 2000中字段可用的数据类型有以下几种: 文本(Text):文本、文本与数字、不必计算的数字,最 长255个字符。 备注(Memo):较长的文本,最长64,000字符。 数字(Number)型:用于算术运算的数字。可在“字段 大小”中分字节、整型、单精度等子类型 日期及时间(Date/Time):从100到9999的日期及时间值。 可进行日期及时间的计算。8字节 货币(Currency):货币值。使用货币类型可避免计算 时四舍五入。8字节 自动编号(AutoNumber):添加记录时的自动序号 递增:添一条记录,字段值增1; 随机:添一条记录,字段值为另一随机数。
确定实体(表) 确定实体标识符(主码) 确定数据元素属性(字段) 确定关系(外码)
2. 数据库规范化
规范化的目标:设计一个优化的和符合逻辑的数据库方 案,使得开发阶段对数据库的修改要求降到最低程度, 且有助于组织数据和消除数据库中的数据冗余 规范化的要求: 表中都是不可再分的基本字段(1NF) 例如,当产品有出厂,批发,零售等多种价格时,要分 别设置相应字段。若价格结构太复杂,则可建新表专门 存放价格数据。 表中所有字段都必须依赖于主关键字(2NF) 一个表只存储一种实体对象。 表中所有字段都是惟一的且不互相依赖(3NF) 例如,表中只设一个日期字段。不能再包含日,月和 星期的字段。
3.5 字段的定义
字段:数据库操纵最小 单位。设计表实际上 是设计字段。其他对 象的设计重心都是存 取或使用字段的数据 字段基本属性:字段名、 数据类型、字段说明、 及数据存储使用方式 字段查阅属性:显示格 式、掩码、默认值、 有效性规则等
1. 字段名与字段说明
字段名 与标题
字段说明在状 态栏中显示