《数据库系统第三章-表.ppt》由会员分享,可在线阅读,更多相关《数据库系统第三章-表.ppt(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 第三章 表5/20/2023 1第三章 表知识点:w表的结构w表的创建w表的关系w导出、导入与链接数据5/20/2023 23.1 表的结构w 表是最基本的数据对象,用于存储和管理数据,是与特定主题(如教师或学生、产品或供应商)有关的数据的集合。w 表由表结构和表内容两部分组成。5/20/2023 3 动手在Access中建立数据库之前,请先在纸上草拟设计方案,建议按照以下基础步骤设计数据库:3.1 表的结构5/20/2023 4(一)确定创建数据库的目的 设计数据库的第一个步骤是确定创建数据库的目的以及以后如何使用。可以采取三种方式完成这一步:与数据库用户交谈,了解他们的需求。草拟您需要数
2、据库产生的表。收集目前用来记录数据的单据或文件,这些数据可帮助了解数据库中应该有哪些内容以及需要那些功能。3.1 表的结构5/20/2023 5(二)确定该数据库中需要的表 是数据库设计过程中最难处理的步骤。先在纸上草拟可能是较好的设计方法。应按以下设计原则对信息进行分类:每个表应该只包含关于一个主题的信息。如客户的地址和客户的订单。请思考?1、为什么将反映不同主题的信息存放到不同的表中?2、如果将所有的信息存放到一张表中,会有什么问题?3.1 表的结构5/20/2023 6学院系部学院代码 学院名称 院长姓名 电话号码 地址 学院简介01 经济学院 杨得勇 68904130 科教楼五层 02
3、 化学与环境工程学院 汪频 68905650 化工楼三层 系部编号 名称 主任 电话 地址 专业介绍0101 经济学 0102 贸易经济 0103 国际经济与贸易 0104 金融学 0105 保险 0106 财政学 3.1 表的结构5/20/2023 7合二为一的一张表:数据冗余学院代码学院名称 院长姓名 电话号码 地址学院简介系部编号名称 主任电话地址专业介绍01 经济学院 杨得勇 68904130 科教楼五层 0101 经济学 01 经济学院 杨得勇 68904130 科教楼五层 0102 贸易经济 01 经济学院 杨得勇 68904130 科教楼五层 0103 国际经济与贸易 01 经济
4、学院 杨得勇 68904130 科教楼五层 0104 金融学 01 经济学院 杨得勇 68904130 科教楼五层 0105 保险 01 经济学院 杨得勇 68904130 科教楼五层 0106 财政学 02 化学与环境工程学院 汪频 68905650 化工楼三层.3.1 表的结构5/20/2023 8(三)确定表中需要的字段 包含所有需要的信息;将信息存储到最小逻辑单位。例如“员工名称”一般分成两个字段“名字”与“姓氏;字段中不要包含多个项目;3.1 表的结构5/20/2023 9(四)明确每条记录中有唯一值的字段 为了连接保存在不同表中的信息,数据库中的每个表必须包含表中唯一确定每个记录的
5、字段或字段集(主键)。例如将某个学生与该学生的所有成绩相连接。3.1 表的结构5/20/2023 10(五)确定表之间的关系 因为已经将信息分配到各个表中,并且已经定义了主键,所以需要通过某种方式告知Access如何以某种方法将相关信息结合到一起。也就是说,必须定义数据库中表之间的关系。参考一个已有的且设计良好的数据库中的关系是很有帮助的。3.1 表的结构5/20/2023 11(六)优化设计 在设计完需要的表、字段和关系后,就应该检查该设计并找出任何可能存在的不足之处。因为在现在改变数据库的设计要比更改已经添满数据的表容易得多。3.1 表的结构5/20/2023 12使用Access的分析工
6、具“表分析器向导”一次能分析一个表的设计。它在适当的情况下能建立新的表结构和关系,并且在合理的时候在相关的新表中拆分原来的表。“性能分析器”能分析整个数据库,做出推荐和建议来改善数据库,并且还能实现这些推荐和建议。3.1 表的结构5/20/2023 13(七)输入数据并创建其他数据库对象 如果认为表的结构已达到了设计规则,就可以继续进行并且在表中添加所有已有的数据,然后创建所需的查询、窗体、报表等。3.1 表的结构5/20/2023 14应用实例:康富员工管理信息系统基本情况编号?姓名技能工资岗位工资浮动工资其他工资扣款小计?实发工资工资情况联系方式3.1 表的结构编号 姓名出生日期 性别文化
7、程度 职称 婚否 备注 照片5/20/2023 153.2 表的创建 在Access 中,可以采用以下五种方式在当前数据库的表对象中建立新表:使用【设计视图】使用【表向导】使用【数据表视图】使用【导入表】使用【链接表】5/20/2023 161、命名字段命名规则:w 避免过长,最好使用便于理解的名字。w 字段名最长可达64个字符(包括空格);w 字段名可以包含字母、数字、空格和其他字符;w 字段名不能包含.!w 不能用空格作为字段名的第一个字符;2、确定数据类型 为字段命名后,必须决定赋予该字段什么数据类型,因为数据类型决定了该字段能存储什么样的数据。3.2 表的创建5/20/2023 17数
8、据类型 可存储的数据大 小文本(Text)文字、数字型字符 最多存储255个字符备注(Memo)文字、数字型字符 最多存储65536个字符数字(Number)数值字节:1个字节(0255)整 型:2个 字 节(-32768-32767)长整型:4个字节单精(4)双精(8)日 期/时 间(DateTime)日期时间值 8字节货币(Currency)货币值 8字节自动编号(Auto Number)顺序号或随机数 4字节是/否(Yesno)逻辑值(-1是,0否)1位OLE对象(OLE Object)图象、图表、声音等 最大为1G字节超(级)链接(Hyperlink)作为超(级)链接地址的文本 最大为
9、65536个字符查 阅 向 导(Lookup Wizard)从列表框或组合框中选择的文本或数值4个字节3.2 表的创建5/20/2023 183、字段说明 在表的设计视图中,字段输入区域的【说明】列用于帮助用户了解字段的用途、数据的输入方式以及该字段对输入数据格式的要求。4、字段属性的设置 在为字段定义了字段名称、数据类型以及说明以后,Access进一步要求用户定义字段属性,即确定字段的属性。每一个字段或多或少都拥有字段属性,而不同的数据类型其所拥有的字段属性是各不相同的。3.2 表的创建5/20/2023 19 属 性 用 途字段大小(Field Size)定义文本、数字或自动编号数据类型字
10、段长度格式(Format)定义数据的显示格式和打印格式输入掩码(Input Mask)定义数据的输入格式小数位数(Decimal Places)定义数值的小数位数标题(Caption)在数据表视图,窗体和报表中替换字段名默认值(Default Value)定义字段的缺省值有 效 性 规 则(Validation Rule)定义字段的校验规则有 效 性 文 本(Validation Text)当输入或修改的数据没有通过字段的有效性规则时,所要显示的信息必填字段(Required)确定数据是否必需被输入到字段中允许空字符串(Allow Zero Length)定义文本、备注和超(级)链接数据类型字
11、段是否允许输入零长度字符串索引(Indexed)定义是否建立单一字段索引新值(New Values)定义自动编号数据类型字段的数值递增方式输入法模式(IMEMode)定义焦点移至字段时是否开启输入法Unicode压缩(Unicode)定义是否允许对文本、备注和超(级)链接数据类型字段进行Unicode压缩5/20/2023 20字段属性定义的技巧1)设置字段的默认值:如:“性别”定义为“女”“日期”定义为系统当前日期 2)字段有效性验证:控制数据输入的正确性和有效性 如:“学院代码”的输入范围在01-99“01”and“99”(between“01”and“99”)如:出生日期小于系统当前日期
12、date()一旦违反了有效性规则,将显示一个信息告诉用户。3.2 表的创建5/20/2023 213)格式:改变数据显示和打印的格式,但并不改变数据的实际存储。用于“文本”和“备注”类型的特殊字符 符号 说明 格式设 置 输入数据 数据显示要求文本字符(字符或空格)-465043799 465-04-3799&不要求文本字符(&)&01087654312(010)87654312强制所有字符为小写 强制所有字符为大写 davolio DAVOLIO3.2 表的创建字段属性定义的技巧5/20/2023 224)设置输入掩码:控制数据输入的格式。Access 允许为除了【备注】、【OLE对象】和【
13、自动编号】数据类型之外的任何数据类型字段定义【输入掩码】属性。输入掩码字符 3.2 表的创建字段属性定义的技巧5/20/2023 23 输入掩码字符 说 明0 数字占位符。数字(09)必须输入到该位置,不允许输入+和-符号9 数字占位符。可以将数字(09)或空格输入到该位置,不允许输入+和-符号。如果在该位置没有输入任何数字或空格时,Access 将忽略该占位符#数字占位符。数字、空格、+和-符号都可以输入到该位置。如果在该位置没有输入任何数字时,Access 认为输入的是空格L 字母占位符。字母必须输入到该位置?字母占位符。字母能够输入到该位置。如果在该位置没有输入任何字母时,Access
14、将忽略该占位符A 字母数字占位符。字母或数字必须输入到该位置a 字母数字占位符。字母或数字能够输入到该位置。如果在该位置没有输入任何字母或数字时,Access将忽略该占位符&字符占位符。字符或空格必须输入到该位置C 字符占位符。字符或空格能够输入到该位置。如果在该位置没有输入任何字符时,Access将忽略该占位符5/20/2023 24输入掩码字符 说 明.小数点占位符,千位分隔符:时间分隔符/日期分隔符 将所有字符转换成大写!使【输入掩码】从右到左而不是从左到右显示。可以在【输入掩码】的任何位置上放置惊叹号 用来显示其后跟随的第一个字符Text 可以在【输入掩码】属性中任何位置使用双引号括起
15、来的文本并且原文照印如:“电话”输入格式定义为(#99)0009-000000093.2 表的创建5/20/2023 25 如果为同一字段定义了输入掩码,同时又设置了格式属性,格式属性将在数据显示时优先于输入掩码。这意味着即使已经保存了输入掩码,在数据设置了格式并显示时,仍将忽略输入掩码。5)必填字段属性 必填字段属性允许用户规定数据是否必须被输入到字段中。3.2 表的创建5/20/2023 265、定义和更改主键w Access数据库系统的强大功能,在于它可以使用查询、窗体和报表快速地查找并组合保存在各个不同表中的信息。w 要做到这一点,每一个表应该包含这样的一个或一组字段。w 这些字段是表
16、中所保存的每一条记录的唯一标识,此信息称为表的主键,也称为主关键字。3.2 表的创建5/20/2023 271)主键的类型(1)自动编号主键 当向表中添加每一条记录时,可将自动编号字段设置为自动输入连续数字的编号。(2)单字段主键 如果某字段中包含的都是唯一的值,可以将该字段指定为主键。(3)多字段主键 在不能保证任何单字段都包含唯一值时,可以将两个或更多的字段指定为主键。如:成绩中的sno和cno3.2 表的创建5/20/2023 282)主键的操作w 设置或更改主键w 删除主键3.2 表的创建5/20/2023 293.2 表的创建6、保存表保存前确定一下主键的设置7、修改表的结构1)在设
17、计视图中修改表结构2)在数据表视图中修改表结构5/20/2023 303.3 建立表间关系 通过规范化的方法,我们对表进行有效的分割,但是其实我们知道,这些表虽然被分割为数个表,但它们之间彼此关联。如:有订单就必有客户,即客户与订单是有关系的,这种关系可描述为“一位客户可拥有多个订单”。因此,所谓的关系式数据库就是将数据加以分类,通过建立表之间的参照关系,既能维持数据之间的联系,又可以避免不必要的数据重复。5/20/2023 311、常见的关系类型:一对一关系:指表中的某一条记录对应到另一表的某一条记录 一对多关系:指表中的某一条记录对应到另一表的多条记录 多对多关系:指表中的某一条记录对应到
18、另一表的多条记录,而被对应到的多条记录,也会对应回原表的多条 记录3.3 建立表间关系5/20/2023 322、相关联字段类型和长度的要求(1)创建表之间的关系时,相关联的字段不一定要有相同的名称,但必须有相同的字段类型(除非主键字段是“自动编号”类型)。3.3 建立表间关系5/20/2023 332、相关联字段类型和长度的要求(2)当主键字段是“自动编号”类型时,只能与“数字”类型并且“字段大小”属性相同的字段关联。例如,如果一个“自动编号”字段和一个“数字”字段的,并且“字段大小”属性均为“长整型”,则它们是可以匹配的。(3)如果两个字段都是“数字”字段,只有“字段大小”属性须相同,两个
19、表才可关联。3.3 建立表间关系5/20/2023 343.设置关系选项1)实施参照完整性:用来建立表间的引用完整性。如果不选择该选项,就可以单独对表进行操作,而不必考虑与之相关联的另外一个表。(如删除:先删子表,再删主表)(如插入:先在主表插入,再在子表插入)3.3 建立表间关系5/20/2023 353.设置关系选项 实施参照完整性的条件 一对多的表间关系需要符合下列3个条件才能实施参照完整性:l在主表和字表中,关联字段有相同的数据类型l在主表中已经将关联字段设置为主键l在子表中,每条记录在关联字段上的值或者为空值,或者等于主表中某条记录的主键值。3.3 建立表间关系5/20/2023 3
20、63.设置关系选项 实施参照完整性后需要遵守的规则l不能在子表的关联字段中输入不存在于主表的主键中的值。l如果在子表中存在对应的记录,则不能在主表中更改相应记录的主键值。l如果在子表中存在对应的记录,则不能在主表中删除相应记录。3.3 建立表间关系5/20/2023 373.设置关系选项2)级联更新相关字段:用于确定是否允许用户修改连接字段的内容。如果选择了该选项,当改变主表的主关键字字段的内容时,将随之也改变相关表的主关键字字段的内容。3.3 建立表间关系5/20/2023 383.设置关系选项3)级联删除相关字段:用于确定是否允许用户删除与其他表中的记录有关系的记录。如果选择了该选项,允许
21、删除主表中的记录,但在删除主表中的记录之前,首先删除从表中的相关记录。3.3 建立表间关系5/20/2023 394.删除关系(1)关闭所有打开的表(2)单击“关系”按钮(3)删除关系3.3 建立表间关系5/20/2023 403.4 表记录的输入 1、“是/否”数据类型的输入 2、查阅向导的设置 查阅向导用于创建一个“查阅”字段。固定值的查阅字段 如性别、学历、职称、籍贯 关系表的查阅字段 查阅字段的值是从另一个表或查询而来的5/20/2023 413.4 表记录的输入3、OLE数据类型的输入 OLE object linking and embedding 对象连接与嵌入 OLE类型的对象
22、有:excel电子表格、word文档、图 形、声音或其他二进制数据5/20/2023 423.5 子数据表 当两个表之间创建了一对多关系后,将“一”端表称为主表,将“多”端表称为子数据表或子表。5/20/2023 43 导入与链接是创建表的另一种方法 导入是将数据导入到新的access表中,或者将数据库对象导入到另一个access数据库中。链接数据则是一种连接到其他应用程序中的数据,但不将数据导入的方法。3.6 表的导入导出和链接5/20/2023 44导入:1、首先打开等待导入的数据库文件2、执行Access的导入功能3、选取欲导入的表4、选取欲导入的表名称3.6 表的导入导出和链接5/20
23、/2023 453.6 表的导入导出和链接对于许多应用来说,可能表已经存在了,只需将它导入链接以后进行管理或导出至其他数据库。导出:1、首先打开等待导出的数据库文件2、执行Access的导出功能3、选取欲导出表所在的数据库文件4、选取欲导出的表5/20/2023 46链接导入是将数据导入到新的Access表中,或者将数据库对象导入到另一个 Access 数据库中。链接数据则是一种连接到其他应用程序中的数据但不将数据导入的方法,这样在其他应用程序与数据之间建立起连接,使用户既可以在原应用程序中,又可以在 Access 中查看和编辑数据。导入与链接的数据源可以是 Access数据库、Excel 电子表格、文本文件等。3.6 表的导入导出和链接5/20/2023 47w表由结构和记录两部分组成。w数据库包含多个表,表与表之间通过关系建立起数据的联系。w输入表记录时,可以通过查阅向导来改变数据的输入方式。w表是access数据库的核心,是其他数据对象的数据源w在设计视图创建表是常用的方法,如果有现成的数据,则用导入的方法。本章小结5/20/2023 48