《第3章表结构的设计.ppt》由会员分享,可在线阅读,更多相关《第3章表结构的设计.ppt(59页珍藏版)》请在三一办公上搜索。
1、3.1二维表及其结构 3.2 Access表的设计要素 3.3表的设计步骤3.4用表设计器创建表 3.5表的其他方式创建方式,第3章 表结构的设计,目的要求,了解二维表及其结构概念理解表的设计要素掌握字段类型、主键、索引概念掌握创建表的基本操作,3.1二维表及其结构 1.表的命名 表名是将表存储在磁盘上的惟一标识。也可以理解为,它是访问表中数据的惟一标识,用户只有依靠表名,才能使用指定的表。在定义表名时,一是要使表名能够体现表中所含数据的内容;二是要考虑使用时的方便,表名要简略、直观。,2.表结构的定义 表由两个部分构成:表的结构和表的数据。表的结构是指表的框架,也称为表的属性,主要包括:字段
2、名称表中的一列称为一个字段,而每一个字段均具有唯一的名字,被称为字段名称。数据类型表中的同一列数据必须具有共同的数据特征,称为字段的数据类型。字段大小表中的一列所能容纳的字符或数字的个数被称为字段大小。字段的其他属性其他一些属性,包括“索引”、“格式”等等。事实上,表结构一旦设计完成,表就已设计完成。然后就可以向这个空表添加具体的数据,这些数据是表的内容,也称表的记录。,二维表由以下几个要素构成:表名、行、列 表3.1表名:学生基本情况,3.2 ACCESS表的设计要素,表是用来实际存储数据的地方,是整个数据库系统的基础,其他数据库对象(如查询、窗体、报表等)是表的不同形式的视图。因此,在创建
3、其他的数据库对象之前,必须先创建表,即先设计出表的结构,然后通过各种方式向表中输入数据,对表中数据进行查询、统计等各种操作,产生对我们有价值的信息。一个表不可缺少的要素是:表名、字段名、字段数据类型、字段大小、字段属性、表的主关键字,一个表其他的可选要素是字段说明、表的属性等。,命名规则:表名和字段名可以是包含字母、汉字、数字、空格和除了句号、叹号、方括号以外的特殊字符的任何组合;可以包含最多64个字符。不能以空格开头,不能使用ASCII字符ACCESS规定,一个表中不能有两个重名的字段。如:姓名、性别、班级ID。,3.2.1 字段的数据类型及字段属性,Access 支持非常丰富的数据类型,因
4、此能够满足各种各样的信息系统开发需求。但是,一般性的应用需求很难用到所有的数据类型,而只是使用其中的一部分。应该认真地学习Access 提供的基本数据类型,这将有助于理解其他那些复杂的数据类型。现将提供的所有数据类型列入表中。,4 个字节。,在添加记录时自动插入的唯一顺序(每次递增 1)或随机编号。,自动编号,1文本型,文本型字段的主要字段属性为“字段大小”,应当为文本型字段指定其字段大小,字段大小从1到255,文本型字段最多为可以存放 255 个字符,默认值为50。如姓名字段,字段大小指定为4,表示该字段最多存放4个字符。在ACCESS中,一个汉字、一个英文字母称为一个字符(这是因为在ACC
5、ESS中采用了Unicode字符集)。因此,字段大小指定为4的姓名字段若输入汉字,最多4个汉字,输入英文字母,也是4个。,例1:指明学生基本情况表数据类型为文本型的字段,并说明其字段大小。答:学生证号,姓名,身份证号码,籍贯为文本型的字段。学生证号字段大小为6,姓名字段大小为4。身份证号码字段大小为18。,用于数学计算的数值数据,其数据类型为数字型。如长度、重量、人数等。数字型字段属性是字段大小,ACCESS为了提高存储效率和运行速度,把数字型按大小进行细分,数字型大小分为字节、整型、长整型、单精度型以及双精度型等类型,默认大小为长整型。,2、数字型,3.日期/时间型,对于日期和时间的处理,A
6、CCESS提供了日期/时间型,把两者合二为一,其存储空间为8个字节。可以表示从 100 到 9999 年的日期与时间值,超出此范围不能表示。日期/时间型主要字段属性是“输入掩码”和“格式”,“输入掩码”是输入时的日期/时间格式,“格式”是显示字段时的格式。通常采用默认值,“输入掩码”和“格式”的默认值是“常规日期”,其格式在Windows“控制面板”中“区域设置属性”对话框中设置。如果数据只有日期,则只显示日期不显示时间;如果数据只有时间,则只是时间,则不显示日期。如果数据包括日期和时间,则同时显示日期和时间。,例:合法的日期/时间型数据1998-12-21,23:12:31,1998-12-
7、21 23:12:31,都是合法的日期/时间型数据。例:指明学生基本情况表数据类型为日期/时间型的字段。出生日期为日期/时间。,4、是/否型对于二值型的字段其数据类型采用是/否型,如婚/否、落户口否。用是/否数据类型表示是和否值、真/假、开/关。其大小为一位。对是/否型数据ACCESS一般用复选框显示,其主要的字段属性是“显示控件”,其默认值“是”,用对号表示是,用空白表示“否”。,5、自动编号自动编号型,当向表中添加一条新记录时,由Access 自动产生的一个唯一的顺序号存入该字段,这个顺序号的产生方式有两种,一是递增,每次加1,第一条记录的自动编号字段的值为1,以后增加记录,依次为1、2、
8、3、4、。另一种产生方式为随机数,每增加一条记录产生一个随机长整型数。需要自动编码的字段可以采用自动编号,在后面章节中,我们经常用到该特殊字段类型。自动编号存储空间为4 个字节,其大小为长整型,“自动编号“字段不能更新。一个表只能有一个自动编号字段。自动编号类型的主要字段属性是“新值”,其取值有“递增”和“随机”,默认值为“递增”。,例:对学生基本情况表加自动编号类型字段 在一个完整的学生管理系统中,每个学生应当有一个唯一身份识别标志,由于姓名有重名的,姓名不能作唯一身份识别标志;学号往往在学生入学后很长时间后才能确定,而在此之前必须输入学生记录,因此,学号也不能作唯一身份识别标志;身份证号码
9、也不能作唯一身份识别标志,因为有的学生根本没有身份证。我们可以在学生基本情况表中加一自动编号字段“学生ID”,然后在学生ID字段加上唯一索引,以保证学生ID的值是唯一的。在学生管理系统内部,用学生ID字段作为学生的唯一身份识别标志。,6、查阅向导,在学生基本情况表中,性别、民族、政治面貌、班级字段都有一个共同的特点,即每个字段的取值都是来源于一个有限的集合。性别字段只能从“男”、“女”两个值中取一;民族字段也只能从56个民族名称中取一;政治面貌字段也只能从十几个值中取一;班级字段也只能从学校全部班级名称中取一,而班级数也是有限的。如果我们事先建立四个表,分别存放这四类基本数据,在计算机中输入编
10、辑学生基本情况表中这四个字段的值时,不用在每条记录中输入文本(特别是汉字),采用点菜方式,选择式输入数据,将大大提高数据的输入效率。,3.2.2 字段属性,1字段说明字段说明属性对字段做进一步的描述,字段说明是可选择的,说明会显示在Access的状态栏中。,2.字段大小,只有当字段数据类型设置为“文本”或“数字”时,这个字段的“字段大小”属性才是可设置的,其可设置的值将随着该字段数据类型的不同设定而不同。,3.输入法模式,“输入法模式”属性仅针对文本数据类型的字段有效,可有三个设置值:“随意”、“输入法开启”与“输入法关闭”,分别表示保持原汉字输入法状态、启动汉字输入法和关闭汉字输入法。“输入
11、法模式”属性的默认值为“输入法开启”。,4.输入掩码,使用“输入掩码”属性,可以使数据输入更容易,并且可以控制用户在文本框类型的控件中的输入值。例如,可以为“电话号码”字段创建一个输入掩码,以便向用户显示如何准确地输入新号码,如:(010)027-83956230等。通常使用“输入掩码向导”帮助完成设置该属性的工作。,5.标题,“标题”属性值将取代字段名称在显示表中数据时的位置。即在显示表中数据时,表列的栏目名将是“标题”属性值,而不是“字段名称”值。,6.默认值,在表中新增加一个记录,并尚未填入数据时,如果希望Access自动为某字段填入一个特定的数据,则应为该字段设定“默认值”属性值。此处
12、设置的默认值将成为新增记录中Access 2007为该字段自动填入的值。一般可用“向导”帮助完成该属性的设置。,7.有效性规则,“有效性规则”属性用于指定对输入到记录中本字段中数据的要求。当输入的数据违反了“有效性规则”的设置时,将给用户显示“有效性文本”设置的提示信息。可用“向导”帮助完成设置。,8.有效性文本,当输入的数据违反了“有效性规则”的设定值时,“有效性文本”属性值将是显示给操作者的提示信息。,9.必填字段,“必填字段”属性取值仅有“是”和“否”两项。当取值为“是”时,表示必须填写本字段,即不允许本字段数据为空。当取值为“否”时,表示可以不必填写本字段数据,即允许本字段数据为空。,
13、10.允许空字符串,该属性仅对指定为“文本”型的字段有效,其属性取值仅有“是”和“否”两项。当取值为“是”时,表示本字段中可以不填写任何字符。,3.2.3主键和索引,1主键若表的一个字段或多个字段的组合可以唯一标识表中每一条记录,则此字段称作表的主键,主键是每个记录的唯一标识符。主键字段不能包含重复值,也不能为空(NULL)值。也许,表中许多字段都可以作主键,主键字段不一定是唯一的。,主键可分为三种类型,自动编号、单个字段及多个字段。如果表中有自动编号字段,一般就把它作为主键。Access自动为主键字段加上唯一索引。,2索引,索引可加速对索引字段的查询,还能加速排序及分组操作。设置一个表的主键
14、后,Access会自动在该主键字段创建索引,索引类型是无重复的唯一索引,也称为主索引。因此,对主键不应重复设置索引。对数据类型为“文本”、“数字”、“货币”、“日期/时间”、“备注”和“超链接”的字段可以设置索引,对OLE 数据类型不可设置索引。,本属性可有以下取值:“无”,表示本字段无索引;“有(有重复)”,表示本字段有索引,且各记录中的数据可以重复;“有(无重复)”,表示本字段有索引,且各记录中的数据不允许重复。与多字段主键类似,有时需要再多个字段加索引,这种索引为多字段索引。如经常按班级+学号排序,就需要按班级、学号的多字段索引。注意,多字段索引的字段顺序是有意义的。按班级+学号索引与按
15、按,3.2.4 表的属性,1说明:“说明”是可选择的,对整个表做进一步的描述。如说明表的设计目的、表示的主题和与其他表的关系等等。,2有效性规则前面我们介绍了字段的有效性规则,除了可以对字段设置有效性规则外,也可以对整个表设置有效性规则。字段的有效性规则只是对一个字段的数据进行规则检验,表的有效性规则可以对多个字段间的关系进行规则检验,当向表中输入数据时对当前记录的值进行检验。利用记录不同字段的逻辑关系,进一步增强实体的完整性。,3有效性文本表的有效性文本是当输入的数据不满足表的有效性规则时系统出现的提示。例如,在学生基本情况表中设定表的规则:“男生的身高必须大于170厘米,女生的身高必须大于
16、160厘米”。有效性文本是“男生的身高必须大于170厘米,女生的身高必须大于160厘米,重新输入!”。如果输入学生的身高和性别数据不满足以上条件,则Access会弹出一个对话框,显示以上有效性文本,要求用户重新输入一条合法记录数据。,3.3表的设计步骤,分析问题,找出主要业务是什么,主要的实体是什么?例如,对学生管理系统,主要业务是对学生的基本情况进行管理,主要的数据是学生基本档案,也就是学生基本情况表,学生基本情况表就是学生管理系统的主要的实体。也许主要业务不止一项,应找每一项主要业务的主要实体是什么?如学生管理问题也包括成绩管理,成绩单是主要的数据对象。,分析主要实体,规划用几个表存储实体
17、数据。简单的实体用一个主要表存放即可,如学生基本情况表用一个表存放数据。人事档案、工资表也用一个表存放数据。复杂的实体用多个表存放,如后面章节介绍的收款单、发票、出库单、入库单、电话费清单等,起码用两个表表示一个完整的实体。,对主要表进行结构分析主要表包括哪些字段?字段的名称、数据类型是什么?具体的数据是什么?可收集一些示例数据。分析关键是确定哪些字段的数据是来自一个有限数据集合?比如:学生基本情况表的性别、政治面貌、民族、班级字段各来自一个有限数据集合。性别、政治面貌、民族、班级也是实体。,对每一个有限数据集合单独设计一个表,这类表可以称为基础数据代码类表。设计基础数据代码类表数据结构包括以
18、下要素:表名、字段名称、字段数据类型、字段大小、字段索引、字段其他主要属性;表的主键、表的其他各种主要属性。,设计基主表的数据结构定义表间关系及参照完整性。(详见第8章)在计算机上完成设计,3.4用表设计器创建表,Access数据库系统提供了六种创建新表的方法,它们分别是数据库向导、数据表视图、表设计器(视图)、导入表、链接表和表向导。其中有实际用途的是在“表设计器”中设计表。,3.4.1使用表设计器创建表,操作步骤如下:(1)打开数据库;(2)在“数据库”窗口,按“新建”按钮;(3)在“新建表”窗口,选择“设计视图”;(4)在“表”结构定义窗口,定义表的结构(逐一定义每个字段的名字、类型及长
19、度等参数);(5)在“另存为”窗口,保存表。,使用表设计器创建表,在数据库设计视图中选择“表”对象卡(如图1-13所示),然后单击“新建”按钮“”,即出现“新建表”对话框,如图所示。,在“新建表”对话框中,选择“设计视图”选项,然后单击“确定”按钮“”,即进入数据表对象设计的操作窗口,称为Access 2007数据表设计视图,如图所示。,在设计视图中设计表对象 在设计视图中,逐一设定数据表中的各个字段,并确定各个字段的相应属性值,也就完成了数据表对象结构的设计操作。完成表结构设计操作后,单击设计视图窗口右上角的“关闭”按钮“”,即弹出询问是否保存的对话框,如图所示。,在“是否保存”的对话框中,
20、单击“是”按钮“”,即弹出“另存为”对话框。此时,需输入新建表的名称。为了创建“库存数据记录”表对象,必须输入表名称如图所示,然后,单击“确定”按钮“”,即完成了“库存数据记录”表对象的创建设计操作。,3.4.2表的属性设置,1.修改字段名操作步骤如下:(1)打开数据库文件;(2)在“数据库”窗口,确定要修改字段名的表,再按“设计”按钮;(3)在“表”结构设计窗口,选定要修改的字段,更改其名称;(4)保存表,结束表的字段名称的修改。,2.字段的输入/显示格式设置 字段的输入/显示格式决定了该字段名下数据的输入和显示格式。除OLE字段类型外,其他类型的字段系统内部已定义了许多格式,可以直接选定这
21、些字段格式,也可以根据需求自定义字段格式,由此来约束数据输入和显示格式。,3.字段标题的设置操作步骤如下:(1)打开数据库;(2)选择要使用的表,按“设计”按钮;(3)在“表”结构设计窗口,确定要定义字段标题的字段,选中“标题”编辑框,输入字段的标题;(4)保存表,结束字段标题的定义。,4.字段有效规则的设置操作步骤如下:(1)打开“表”结构设计窗口,选定“常规”选项卡;(2)在“常规”选项卡,选中“有效性规则”编辑框,再按按钮;(3)在“表达式生成器”窗口,输入有效规则;(4)保存表,结束字段有效性规则的定义。,5.字段输入掩码的设置操作步骤如下:(1)打开“表”结构设计窗口,选定“常规”选
22、项卡;(2)在“常规”选项卡,选中“输入掩码”编辑框,再按按钮;(3)在“输入掩码向导”的引领下,定义字段的输入掩码;(4)保存表,结束字段输入掩码的定义。,6.定义唯一的一个主关键字段 对于任意一个数据表对象,Access一般都要求定义唯一的一个主关键字段。根据关系数据库的基本概念,这是必要的。若未定义主关键字段,则在退出表结构设计并要求保存本次设计操作时,Access 会询问并在得到认可的情况下自行增加一个取名为ID的、数据类型为“长整型”的自动编号字段。在作为主关键字的字段左部标记列上标记着一个“钥匙”图标,这就表明将该字段设置成为主关键字了。,3.5 表的其他方式创建方式,3.5.1
23、复制表 选择一个存在的表,单击编辑菜单中的“复制”菜单选项,在单击“粘贴”菜单选项,则出现“粘贴表方式”对话框(如图3-36所示)。选择一种粘贴表方式,产生一个新表。,3.5.2在数据表视图中输入数据创建表 在数据表视图中创建表结构的方法是,直接在数据表视图中输入数据。输入了多少列的数据,所创建的表就有多少个字段,各字段名称分别为“字段1”、“字段2”等等;各字段的数据类型则由Access根据所输入的数据做出判断。为了修改数据表对象的结构,应该在数据库设计视图中选中需修改结构的表对象,然后单击工具栏上的“设计”按钮“”,即进入数据表设计视图。,3.5.3使用表向导创建表,操作步骤如下:(1)打开“数据库”;(2)在“数据库”窗口,按“新建”按钮;(3)在“新建表”窗口,选择“表向导”;(4)在“表向导”窗口,依次完成在“示例表”列表框中,选择样表,在“示例字段”列表框中,再选择可用的字段,定义表名及是否设有主键,确定主键及主键输入方式,确定新建表与数据库中已有的表间的关联关系,选择表的保存方式。,