《Access 2007开发指南(修订版)》一一2.4 为数据选择适当的字段类型

2.4 为数据选择适当的字段类型

Access 2007开发指南(修订版)
为各个字段选择的数据类型对应用程序的性能及其功能有很大影响。以下几个因素会影响到对表中各个字段数据类型的选择:

字段中所存储的数据类型;
字段的内容是否需要包含在算式中;
是否需要按字段的数据进行排序;
按字段的数据进行排序的方式;
存储空间对用户来说是否特别重要。
需要在字段中存储的数据类型对数据类型的选择影响最大。例如,如果要存储以0起始的数字,那么就不应该选择“数字”字段,因为输入到“数字”字段中的起始0会被忽略。这样的数据例子包括邮政编码(有些是以0起始的)和部门代号。

注意

如果存储在字段中的起始0不是很重要,也就是说,只须让其显示在窗体和报表之中,那么可以使用字段的“格式”属性。2.5节将对“格式”属性进行详细的讨论。
如果字段的内容需要包含在算式中,则必须选择“数字”或“货币”数据类型。由其他数据类型定义的字段内容不能用到算式中。这个规则唯一的例外就是“日期”字段,它可以包含在日期/时间算式中。

用户还必须考虑是否要对字段中的数据进行排序及是否对其进行索引。OLE字段、附件字段和超链接字段不能用于排序,因此,对于那些字段中的数据要用于排序或索引的字段,就不应该选择这样的字段类型。而且,还要考虑到数据排序的方式。例如,在一个文本字段中,数字集合是按其所出现的次序排序的(也就是说以1,10,100,2,20,200这样的次序排序),这是因为“文本”字段中的数据按标准的ACSII顺序。然而,在“数字”字段和“货币”字段当中,数字的排序是按照数值的升序(即按1,2,10,20,100,200排序)。用户也许会认为自己根本没有必要按标准的ACSII顺序,但是,在对部门代号这样的信息进行排序时,应该使用这种排序方式。利用Access 2007可以排序或分组“备注”字段的内容,但是它实现这种排序或分组的功能只能基于前255个字符。最后应该考虑磁盘空间对自己来说是否特别重要。由于不同类型的字段在硬盘上所占用的存储空间不同,因此在选择字段的数据类型时,也应该考虑到这一点。

Access可以使用多种字段类型,即文本、备注、数字、日期/时间、货币,自动编号、是/否、OLE对象、附件和超链接。表2.1给出了各个字段类型的使用情形及其所占用的存储空间。


注意

超链接字段类型包含一个超链接对象。超链接对象包含3个部分。第1部分叫做显示文本,这是指显示在字段或控件上的文本;第2部分是用于引用字段的实际文件路径(UNC)或网页(URL);第3部分是子地址,它表示文件和网页中的位置。
选择字段类型的难点在于确定在给定情况下使用何种类型才是最佳的。下面给出各个字段类型的详细描述及其使用情形。

2.4.1 文本字段:最常用的字段类型

大多数字段都是文本字段。许多开发人员并没有意识到这一点,对于那些不用于算式中的数字最好使用文本字段。这样的例子有电话号码、部门代号和邮政编码等。虽然说文本字段的默认大小是50个字符,但是文本字段可以存储多达255个字符。由于Access是动态分配磁盘空间的,因此大尺寸字段并不使用硬盘空间,当然,尽可能地申请小的字段可以提高运行性能。文本字段所允许的最大字符数目由“字段大小”属性进行控制。

2.4.2 备注字段:处理较长的注释和说明

备注字段可以存储最多65 536字节的文本,它可以使每个记录容纳多达16页的文本。备注字段对以表数据存储的各种备注类型来说是较好的选择。请记住,在Access 2007中备注字段可以用于排序。

2.4.3 数字字段:计算

数字字段用于存储必须要包含到算式中的数据。如果货币数目要包含到算式当中,或者算式要求较高的精度,那么应该选择货币字段,而不应该选择数字字段。数字字段实际上是好几种字段类型的组合,因为Access 2007提供了7种大小的数字字段。“字节”可以存储的整数为0~255,“整型”可以存储的数字大小为−32 768~32 767,“长整型”可以存储的数字大小为−20亿~20亿。虽然说这三种大小类型具有较好的性能,但是,可以明显地看出它们所要求的存储空间逐渐增大。另外两种数字字段类型是“单精度型”和“双精度型”,它们能提供十进制浮点数,因此运行起来相对较慢。“单精度型”可包含7位小数,而“双精度型”可包含14位小数。“小数”是Access 2002中引入的数字数据类型。小数数据类型允许存储较大的数字,并且提供最高28位数字的精度。最后一种类型是“同步复制ID”,它用于提供数据同步过程所要求的唯一的标识符(应用于.MDB文件格式中)。

2.4.4 日期/时间字段:跟踪事件的发生

日期/时间字段用于存储有效的日期和时间。日期/时间字段可以执行日期运算,它能保证日期和时间的排序准确无误。实际上,Access在内部是以8字节的浮点数存储日期和时间。时间是表示一天的一部分。

注意

在Windows控制面板中的日期和时间设置会反映到数据当中。例如,如果在控制面板当中修改“区域设置”中的“短日期格式”,那么这种修改将迅速地反映到窗体、报表和数据表当中。

2.4.5 货币字段:存储钱数

货币字段类型是一种特殊的数字字段,当用户要将货币值存储到表中的时候,就会使用到它。货币字段能防止数据运算的截尾运算。它用15位数来存储“元”,同时又能保证“分”计算的准确性。虽然说这种类型的字段运算准确,但是它的处理速度较慢。

注意

在Windows控制面板中的货币格式修改会反映到数据当中。当然,Access并不能自动执行货币数目的实际转换。同日期一样,如果在控制面板当中修改“区域设置”中的货币格式,那么,这种修改将迅速反映到窗体、报表和数据表当中。

2.4.6 自动编号字段:唯一的记录标识符

当添加一个记录之后,Access会自动生成自动编号字段。在Access以前的版本中,计数器的值必须是有序的。在Access 2007中,自动编号字段类型既可以是有序的,也可以是随机的。当多个用户在脱机情况下同时添加数据时,随机分配非常有用,因为Access不可能为两个记录指定同一个随机值。同步复制ID是自动编号字段的一个特殊类型。这个随机产生的唯一数字在复制过程(应用于.MDB文件格式中)中能生成唯一的标识符,它用于保证数据库的复制同步。

对于有序的自动编号字段,需要注意以下几点。如果用户从一个表中删除了一条记录,那么其唯一的编号将永远流失。同理,如果用户在一个表中添加了一条记录然后又取消了,那么与这条记录相对应的唯一的计数器值也将永远流失。如果不能接受这种结果,那么就应该生成自己的计数器值。

提示

对于字段名称,如果想要将Access数据库升迁到客户/服务器数据库,那么就必须知道所选的字段类型。例如,Access输出“自动编号”字段为“长整型”。由于一些非Microsoft的数据库服务器不支持自动编号,所以用户必须在服务器上创建一个插入开关,用来提供下一个键值。还可以通过使用窗体级事件完成自动编号,但是这么做不可取,因为如果其他应用程序在访问该数据,那么数据库引擎不能强迫编号。如果是升迁到Microsoft SQL Server,那么Access 2007的“升迁向导”就会将所有“自动编号”字段转化为“标识”字段(SQL服务器上等价于自动编号)。

2.4.7 是/否字段:从两个答案中选择一个正确答案

可以用是/否字段来存储一个逻辑是或逻辑否。实际上,“是”在字段中是以“1”存储的,而“否”在字段中是以0存储的。此外,Null表示没有选择。字段的显示格式决定了用户所能看到的选项(一般有是/否、对/错和开/关,如果将其三态属性设为“真”的话,则还有第3种选项“空”)。是/否字段特别适合于那些只有“是”和“否“两个逻辑值的数据。它不仅能够限制用户的无效选择,而且能够节约存储空间。

2.4.8 OLE对象字段:具有强大的存储功能

OLE对象字段是用来存储在Windows中注册的OLE服务器应用程序的数据,包括电子表格、字处理文档、声音和视频。OLE对象字段的应用非常广泛,应用的例子包括用来存储履历、对雇员的评语、预算或视频。但是,在大多数情况下,不要将文档本身存储在OLE对象字段当中,还是使用超链接存储文档的链接更为方便。

2.4.9 附件字段:在单个字段中存储多个文件

使用附件字段类型,可以在单个字段中存储多个附件。这些附件甚至可以是不同类型的。例如,可以在一个字段中使用Excel数据表和Word文档。“附件”字段可以用来代替它的前任 —— OLE对象字段。使用OLE对象字段,Access可以在Access数据库中存储对象的位图,这会使数据库膨胀。而Access在“附件”字段中存储数据,这样会更有效。

“附件”字段还有额外的优点。例如,Access会着色图像文件,并且显示与其他文件类型相关的程序图标。如果字段包含照片、数据表和Word文档,那么Access就会显示该图像,并会给其他对象展示该应用程序图标。Access在存储对象时会压缩它们,除非这些文件已经被压缩了。最后,用户可以通过编程来操作附件。

有关“附件”字段还有一些值得注意的其他事情。每个数据库支持最大2GB的数据附件,并且每个附件必须小于256MB。必须使用“附件”对话框(如图2.7所示)编辑和管理附件,除非用户使用程序管理它们。

2.4.10 超链接字段:实现与Internet的链接

“超链接”字段用来存储统一资源定位符地址(URL),它用于与Internet上的全球Web页或在内部网上实现链接。超链接字段也用来存储通用命名约定(Universal Naming Convention,UNC)路径,它用于实现与文件路径的链接。超链接字段类型分为以下3个部分:

用户所见到的东西;
URL或UNC;
子地址,如区域名或书签。
当在超链接字段中放置了一个项目之后,这项便充当一个对应于自己所指定的文件或Web页的直接链接。2.10节将对超链接进行详细讨论。

时间: 2024-11-02 01:42:27

《Access 2007开发指南(修订版)》一一2.4 为数据选择适当的字段类型的相关文章

《Access 2007开发指南(修订版)》一一1.9 Access 2007的新功能

1.9 Access 2007的新功能 Access 2007开发指南(修订版) Access 2007添加了大量新功能,它们都值得一看.虽然Microsoft将许多这些功能定位于终端用户,但是在产品中还是有许多其他有用的改进.接下来的章节提供了这些新功能的概况.本书的适当章节还会详细介绍每个功能. 1.9.1 用户界面的新功能 Access 2007的用户界面是经过重新设计的.Microsoft公司作出这样的改变,是为了帮助用户在需要某些命令的时候,方便地找到它们.以前许多功能深藏在Acces

《Access 2007开发指南(修订版)》一一2.2 创建新数据库

2.2 创建新数据库 Access 2007开发指南(修订版) 在通常的术语中,数据库是存储信息的集合.Access数据库由表.查询.窗体.报表.数据访问页面.宏和模块构成.数据库中的每个表都应该包含有关某个特殊主题的信息.使用查询可以从一个或更多表中抽取指定的信息.窗体和报表提供了显示数据的方式.最后,利用宏和模块可以生成一个内置的应用程序. 当创建Access应用程序时,必须采取的第1步是执行必要的分析和设计步骤.1.8节介绍了这些初始的步骤.在有了设计文档之后,就可以准备建立数据库了.用户

《Access 2007开发指南(修订版)》一一1.10 Access 2007中的其他新特性

1.10 Access 2007中的其他新特性 Access 2007开发指南(修订版) Access 2007极大地增强了导入和导出功能.例如,现在可以导出到PDF和XPS字段:也可以保存导入和导出的具体规范,这样用户以后就可以重复使用它.在第20章中将介绍这些功能. Access 2007和Outlook 2007是紧密地结合在一起的.可以使用Outlook 2007收集和更新数据.当使用新的"数据收集"功能时,Access 2007会自动创建一个Microsoft Office

《Access 2007开发指南(修订版)》一一2.5 字段属性操作

2.5 字段属性操作 Access 2007开发指南(修订版) 在表中添加了字段之后,就应该自定义它们的属性.可以使用字段属性来控制数据的存储方式,以及什么样的数据可以输入到字段当中.根据所选定字段类型的不同,字段的属性也会有所不同."文本"字段类型的字段属性列表具有一定的代表性(如图2.8所示).以下各节就专门讨论各个字段属性. 2.5.1 字段大小:限制对字段的输入 第1个属性是字段大小,它只适用于文本和数字字段.如前所述,应该使字段大小尽可能小.对数字字段来说,字段越小,对存储空

《Access 2007开发指南(修订版)》一一1.7 硬件要求

1.7 硬件要求 Access 2007开发指南(修订版) Aceess的一个不足之处就在于它对硬件资源的要求太高.这种要求对开发人员和最终用户来说是不一样的,因此,将系统要求分成两个部分来讨论.当用户在接触到这些要求时,请注意实际要求和推荐要求之间的区别. 开发人员的系统硬件要求 根据文档说明,以下是运行Aceess 2007所要求的最低配置: 主频大于500MHz的处理器: 带有Service Pack 2的Windows XP.带有Service Pack 1的Windows 2003或者

《Access 2007开发指南(修订版)》一一1.5 什么是数据库对象

1.5 什么是数据库对象 Access 2007开发指南(修订版) 正如前面所提及,Access的数据库由表.查询.窗体.报表.宏和模块组成.这些对象都有自己特定的功能.Access环境还包括好几个杂项对象,包括关系.数据库属性和导入/导出规格.有了这些对象,就可以创建功能强大的.用户友好的集成应用程序.图1.1所示的是Access的应用程序窗口.请注意,在"导航窗格"中列出的对象类别.以下各节对Access数据库的各个对象进行解释. 1.5.1 表:数据的仓库 表是应用程序的起点.不

《Access 2007开发指南(修订版)》一一1.11 额外的提示和技巧

1.11 额外的提示和技巧 Access 2007开发指南(修订版) 在操作Access 2007时,有一些额外的提示和技巧值得用户注意.例如高级"导航窗格"技巧和操作多值字段的过程.下面一小节将详细讨论这些话题. 1.11.1 高级导航窗格技巧 Access 2007具备一些值得注意的极好的"导航窗格"技巧,包括创建自定义类别和组的能力,在类别中显示或隐藏组或对象,以及在自定义组中移除和保存对象.下面以创建自定义类别开始介绍,具体操作步骤如下所述: (1)右键单击

《Access 2007开发指南(修订版)》一一1.13 小结

1.13 小结 Access 2007开发指南(修订版)在学习Access开发的实际内容之前,必须先理解什么是Access,以及它是如何适应应用程序开发世界的.Access是一个功能强大的产品,它的应用比较广泛,从家庭用的计算机,到使用企业级客户/服务器数据库的公司用的计算机,均可以找到Access的应用程序. 在理解了什么是Access及它的用途之后,才可以学习它众多的对象.Access的应用程序由表.查询.窗体.报表.宏.模块.功能区.关系及其他对象组成.只要对象进行了良好的设计,那么Acc

《Access 2007开发指南(修订版)》一一1.3 具有缩放能力的Access

1.3 具有缩放能力的Access Access 2007开发指南(修订版)Access之所以强大,还在于它的缩放能力.使用Microsoft Access开发的应用程序,在开始时可以是在单个工作站上运行的小型商务应用程序,但是到后来,它可以变成一个企业级的客户/服务器应用程序.如果应用程序设计良好,用户扩展工作是非常简单的,甚至不用重写代码.这个特点使得Access非常适合于需要扩展的商务应用程序,如果要将在部门级开发的应用程序分布到整个公司,那么它也是极好的选择. 更让人欣慰的是,Acces