基于Access 2007 的高级词表操纵的编纂系统初探
2014-01-13李得卉
李得卉
(厦门大学,福建 厦门 361005)
一、语料库与个人高级词表的构建
(一)建立个人高级词表的必要性和迫切性
随着社会和教育的进步,英语学习者的水平、学习要求和学习目的都发生了很大的变化,英语教育者面临的任务和压力比以往任何时候更为艰巨,纯粹的纸质版资料由于更新速度慢,知识浓缩度低显然已不能满足英语教育者和学习者的需要。另一方面,国外大型公开的网上语料库,如Bank of English、British National Corpus (BNC)主要目的是为工具书的编纂和语言调查研究而设计的,虽然检索出的条目信息丰富,但是过于宽泛的信息会令普通使用者无所适从,寻找目标信息费时费力。因此,笔者认为有必要力所能及地建设和维护使用个人高级词表甚至个人小型语料库。
(二)个人高级词表的优势
1.便于创建更为丰富的而又富于个性的词条信息,个人词表收集的语料针对性强,能够根据个人的特殊需求和兴趣进行设计。
2.便于控制,语料能够在日常教学和学习中及时更新和修改,具有开放性和时效性。
3.词表一般是个人电脑就可以完成创建,简单易学,经济快捷,并且可以进行个性化创建和功能管理。
二、创建基于Microsoft Access 2007 的高级词表操纵系统
Microsoft Access 是一种关系型数据库开发系统。它结合了Microsoft Jet Database Engine 和图形用户界面两项特点。用户无需深厚的数据库知识即可使用的交互式设计功能,Office Access 2007 可帮助信息工作者轻松、快速地跟踪和报告信息。
(一)Access 数据库技术原理的几个基本概念及其在词表中的应用
Access 数据库是纸质文件编排系统中文件编排功能和检索功能的自动化版本,数据库则是用于数据和相关对象的总体容器。
1.主键、外键功能
Access 表都应该具有主键,即每一个记录具有唯一值的一个或者多个字段,Access 中用一个钥匙的形状来指代主键,而外键指的是一个或多个表的字段,它引用到另一个表的主键字段或一些字段。外部键指示表是如何被关联的,如图1 所示,tblverbsofpossession 中的verblist 是主键,tblhyponym 中的ID 是主键,而字段verbs 则成为了外键,它可以将tblhyponym 与tblverbsofpossession 联系到一起。
图1
如图1,Verblist 在表格tblverbsofpossession 中是主键,而这样的verb 在tblhyponym 中没有作为主键,而是作为外键而存在。主键可以作为表间共有的链接字段,这也是我们建立个人简易数据库或者词表所要使用主要主键功能。另外,主键字段都进行了索引,可以极大地提高涉及主键字段的查询、搜索和排序速度。
2.数据表联接以及表关系
Access 数据库中数据表之间最常见的关系是一对多关系。在一对多关系中,第一个表(父表)中的每条记录都与第二个表(子表)中的一条或多条记录相关。第二个表中的每条记录都与且只与第一个表中的一条记录相关。多对多关系中,两个表中的每条记录都可以与另外一个表中的零条、一条或多条记录相关。一般情况下,多对多关系难以理解,会被拆分成多个一对多关系。一对多关系是一种能够充分参照完整性规则的关系,经常被用来设计数据库表关系,它会告诉Access 如何从两个或多个表中的字段中查找并显示信息。如图2 即为领属类动词表和三个子表的链接关系:
图2
如图2 所示,父表tblverbsofpossession 和三个子表tblhyponym、tblhypernym 和tblantonym 均是一对多的关系,而以后所建立的查询等操作均沿着一对多关系涉及到多个表格。
3.查询以及多个表连接查询
完成表的创建以后,点击窗口上方创建选项卡中的查询设计,弹出显示表对话框,依次添加父表tblverbsofpossession 和三个子表tblhyponym、tblhypernym 和tblantonym 表(如图3 所示)。
图3
查询设计对话框上半部分显示出各个表之间的关系,联接线会自动添加到查询中,下半部分则显示查询可输入的条件。例如,我们要搜索动词give 的上位词(hypernym)、下位词(hyponym)以及反义词(antonym),在输入各个条件后,单击“运行”按钮即会出现这样一个搜索结果。最后点击保存按钮,将生成的查询表保存为“领属类动词查询”。
4.窗体技术
建立查询窗体可以更直观的进行查询和显示查询结果,点击创建选项卡下的其他窗体——窗体向导,弹出窗体向导对话框,将各个可用字段添加到向导中,设计好窗体风格后,即可生成一个查询窗体。
另外,我们还可以运用Access 简单的主窗体和子窗体技术在主窗体内插入两个以上的子窗体。当使用向导创建窗体时,如果选定的表/查询中的选用字段可组成一对多关系时,系统也会指导你创建成主/子窗体。当然还有其它一些方式。
当鼠标放在下半部分的窗体不同记录条时,上半部分的两边对齐窗体的显示也会相应的变化。
5.VBA(Visual Basic for Application)数据库中的应用
VBA(Visual Basic for Application)是Visual Basic 编程在数据库中的应用,其基本的操作有用来打开和关闭操作、调用输入框和消息框等。
活动数据对象(简称ADO)是VBA 提供的主要数据库访问接口之一,它有九个对象,其中记录集(Recordset)对象的功能最常用、最重要。它是指对表执行查询操作时,返回的一组特定记录。我们可以将记录集应用在窗体对象的创建上:建立一个空白窗体→设计各个控件→编程记录集当前的记录的相关字段或者将字段的值通过控件显示。如果涉及数据访问的事件过程不止一个,可在代码窗口的通用段定义Connection 对象和Recordset 对象,然后在Form_Load 事件过程中完成数据库连接和数据表的打开。例如,我们想要在一个新建的窗体form1 中完成和库中tblhypernym 数据表的部分连接。
6.SQL(Structured Query Language,结构化查询语言)特定查询
Access 有三种查询类型不能使用QBE 窗格创建,但是可以在“SQL 视图”窗口中直接键入适当的SQL(Structured Query Language,结构化查询语言),这些SQL 特定查询包括以下查询:
联合查询:将多个表或查询中的字段合并到一个记录集中。
传递查询:能够将SQL 命令直接发送到ODBC(Open Database Connectivity,开放式数据库连接)数据库。
数据定义查询:能够直接在数据库(如Access 数据库)中创建或改变数据库表或创建索引。其中联合查询和传递查询有时也会在词典工作者的工作实践中有所应用,由于本篇篇幅所限,不再演示和讨论。
三、结语
使用Access2007 创建词汇数据库或者词表,方法简单,易于掌握,不需要很深的数据库知识,就可以实现交互设计功能,帮助教师以及词典编纂者轻松快速的完成中小型数据库的建立。而且可以根据需要建立起友好的查询界面,操作简单,查询数据省时、省力,同时数据库的维护也非常安全快捷。
[1]George A. Miller,Christiane Fellbaum. Wordnet Then and Now[J]. Language Resources and Evaluation,2007,(41):209 ~214.
[2]Michael R. Groh,et al. Access 2007 宝典[M].北京:人民邮电出版社,2008.
[3]陈伟,穆绣珍.使用Access2007 管理药品说明书进行模糊查询[J].今日药学,2009,(3):57 ~59.
[4]曲宪明.心理词库与英语词汇习得[J].牡丹江师范学院学报(哲社版),2011,(1):64 ~67.