字段是通过在表设计窗口中的字段输入区域的每一行中输入字段名和字段数据类型来创建的。字段描述是用来识别字段对象的选项。输入数据时,描述将会出现在窗口底部的状态栏中。
输入完每个字段的名称和数据类型后,就可以在属性区域中输入属性来进一步指定每个字段的使用方式。
1 .命名字段
需要向开发人员、系统用户和Access 提供具备充分描述性的字段名来识别字段。字段名需要足够长,便于可以快速地识别字段的对象,但也不要过长(后面在输入有效性规则或在计算时如果使用字段名,就需避免字段名过长的情况。〉
要输入字段名,将指针指向"字段名称"列下表设计窗口中的第一行。随后按照以下规则键入合法的字段名:
字段名字符数为1 至64 个。
字段名可以包含字母、数字和多个特殊字符。
字段名中不可以包含句号(.)、叹号(!)、方括号([]) 或者重音符号(')。
不可以使用低位的ASCII 字符,例如Ctrl+J 或者Ctrl+L (ASCII 值为0 至31) 。
开头处不可以为空格。
不可以对Microsoft Access 项目文件中使用双引号(" )。
可以用大写、小写或者大小写混合的方式输入字段名。在键入字段名时如果出现错误,可将光标置于错误位置并键入更正后的内容。可以随时改变字段名,即使字段名位于表中并且字段中包含数据也可以。
注意: Access 对大小写并不敏感,因而数据库将表命名为tblContactss 或者TblContactss 并没有关系。选择大写、小写或者大小写混合方式完全由用户来决定,但表名称必须具有描述性并且易于理解。
警告:保存表后,如果更改了字段名,那么同样需要是改查询、窗体或者报表中使用的字段名。Access 应用程序出现错误的一个主要原因就是史改了基本数据库对象,例如哀和字段,而忽视了改变整个数据库中所有相应的内容.要忽略窗体或者报表中,或者深入嵌入到应用程序VBA 代码中的控件的控制源中的字段名引用非常容易。
2. 指定敢据类型
下一步就是创建表和定义表的字段。还要决定每个字段中包含的类型数据。在Access 中,可以选用多种数据类型(本章下面将会详细说明这些数据类型)。
文本:文字和数字字符,最多为255 字。
备注:文字和数字字符,最长可达65538 (64K) 个字符。
数字:多种类型和格式的数字。
日期/时间:日期和时间数据。
货币:货币数据。
自动编号:自动增加数字计数器。
是/否:逻辑值、是/否、真/假。
OLE 对象:图像、图形、声音、视频以及文字处理和电子表格文件。
超链接:与图像、图形、声音、视频以及文字处理和电子表格文件连接的字段。
必须向每个字段分配一个数据类型。而且还需要指定文本字段的长度,或者接受文本字段50个字符的默认值。
3. 设计数据输入规则
最后一个设计决定是关于数据有效性的,数据有效性在用户输入数据时显示得尤为重要。用户需确保进入系统中的数据不会出现问题(通过某种规定测试的数据)。用户必须处理几种不同的数据有效性。例如,可以测试己知的单个工页,规定Gender 字段只能接受Male 、Female 或者Unknown 值。或者还可以把Weight 值指定为0 到1500 磅之间来测试范围。
4. 设计查阅表
为了进行数据有效性或是使系统的创建变得更轻松,有时需设计完整的表:这些表称为查阅表。例如,由于Access Auto Auctions 需要使用字段来确定客户的税率,因此需要使用包含纳税地点和税率的查阅表。再例如,当客户通过特定的方式(现金、信用卡或现金汇票等方法)来进行支付时也可能需要使用查阅表。
由于税率经常变动,存储税率远比将税率硬编码到应用程序中更有意义。使用查阅表后,每当创建发货单时Access 就可以从tblTaxRates 中查询到当前的税率。一张发货单所使用的税率将与其他发货单数据一起存储到Invoice/Sales 表中,这时因为这些数据是依时间而变化的,存储在tblTaxRates 中的值很可能会在未来发生变化。
查阅表的另一个对象就是将字段中的输入数据限定为一个特定的值。例如,可以使用包含支付类型(现金、支票、MasterCard 等〉的表。支付类型表(tblPaymentTypes) 可以用作查阅表,来确保只有批准的支付方法可以输入到Invoice 表中。
提示:当在表中创建字段时,可以使用数据类型"查阅向导".这并不是一种实际的数据类型,但却可以通过不同的方法存储和显示字段.
尽管可以在数据输入窗体中创建字段,将联系人的合法输入值限定为销售商和购买者,但还需要创建一个只包含一个字段( ContactType) 的表并且使用tblContactss 中的ContactType 字段来链接到ContactType 查询表中的该字段。
注意:可以用与创建其他表完全一样的方式来创建查阅表,并且其工作方式与其他表也相同.惟一的不同点就在于农数据的使用方式。
Access Auto Auctions 应用程序中包含了几个查阅表: tblPaymentType 、tblTaxRates 和tblCategories 。
5. 分配字段数据类型
命名完一个字段之后,必须决定字段中保存何种类型的数据。开始输入数据之前,用户应该充分了解系统将要使用的数据类型。表2-2 显示出了10 种基本的数据类型:有些数据类型(例如数字)可以包含几个选项。
表2-2 Microsoft Access 中可用的数据类型
图2-17 显示了为所创建的字段选择数据类型的"数据类型"下拉菜单。
图2-17 "数据类型"下拉菜单
以下是在为表中的新字段选择数据类型时需要考虑的基本规则:
数据类型应反映字段中的所存储的数据。例如,用户应选择一种数字数据类型来存储如数量和价格等数字。然而,不能在数字字段存储电话号码或者社会安全号码。应用程序不会对电话号码进行加或乘等数字操作,并且该类数据也不应该存储在数字字段中。而是应该使用面向社会安全号码和电话号码等公共数据的文本。而且,数字字段不会存储开头部分的零。向数字字段中输入邮编(例如02173) 意味着实际上只存储了4 位数字(2173) 。
需要考虑选定数据类型的存储需求。尽管可以使用长整型来代替简单整型或者字节值,长整型的存储需求( 4 字节〉是简单整型的两倍。这意味着需要两倍的内存来使用和操作数字,并且需要两倍的空间来存储数字。因此对于数字数据来说,要尽可能地使用字节和整型数据。
是否希望对字段进行分类或者索寻I? 由于二进制的特性,备注和OLE 对象字段无法进行分类或索引。因而在使用备注字段时需谨慎行事。存储和使用备注字段所需要的系统开销相当可观。
需要考虑到数据类型对排序需求的影晌。数字数据的排序方法与文本数据有所不同。使用数字数据类型时,数据会按预期进行排序: 1. 2 , 3, 4, 5 , 10 , 100 。而存储为文本数据的同样序列就会按这样的方式进行排序: 1. 10, 100, 2, 3, 4 , 5 。如果必须以数字顺序对文本数据进行排序的话,必须在开始进行排序之前增加数据的转换功能。
注意:使代表数字的文本数据以适当的顺序进行排序非常重要,需要在数字之前加零(00 1, 002 等) . 这样文本值就会按预期的顺序进行排序: 00 1, 002 , 003 ,
004 , 005 , 010 , 100.
数据文本还是日期数据?在处理日期时,把数据存储到"日期/时间"字段中比存储为"文本"字段要好。文本值的排序方式不同于日期数据(日期在内部被存储为数字),这样会扰乱依赖于时间顺序的报表和其他形式的输出数据。
记住所需要的报表。用户不可以对报表中的备注或者OLE 数据进行排序或分组。如果基于各注或者OLE 数据来创建报表非常的重要的话,可以添加如日期或者序列号等标记字段,它们可以用来为表提供排序键。