Lotus Notes数据库与关系型数据库概念的比较
我们知道在数据库理论中,有外模式、模式和内模式之分。外模式(又称子模式或用户模式)是数据库用户使用的局部数据 的逻辑结构和特征的描述,是数据库用户的数据视图,如视图和表的结构、类型、长度、保密级别等。模式是数据库中全体数据的逻辑结构和特征的描述,是所有用 户的公共数据视图,如不同表的结构、类型、长度、保密级别等,以及表和表之间的各种逻辑关系。内模式(又称物理模式)是数据物理结构和存储方式的描述,是 数据在数据库内部的表示方式,如存储、索引方式以及数据压缩、加密和聚簇等。为了对Notes文档数据库和关系数据库进行比较,下面让我们来了解一下 Notes文档数据库的相关概念。
1.Notes 数据库文件 (.NSF):数据库文件包容应用程序的数据,其结构由表单、域、文件夹、视图及其他显示功能部件(诸如导航器和数据库图标)组成。具体分两个部分:设计 元素、数据文档。设计元素就是表单(Form)、域(Field)、视图(View)和文件夹(Folder)等等,它们构成了应用的基础。数据文档 (Document)是用户提交的数据信息。形象来说,它就是用户保存在Form中的文档,例如:一份公文。
2.表单(Form):NSF数据库文件中,一个NSF数据库中可定义多个表单,表单由多个表单元素组成。表单元素 是用于创建表单外观和功能的组件。和页面一样,表单可以包含:文本、水平基准线、表格、区段、图形、图像映射、链接、自动功能、小程序、附件、嵌入元素和 HTML。表单可由多个子表单组成,子表单是表单元素集合,它作为一个单独的对象来保存。子表单可以包含与常规表单相同的元素。使用子表单可以节省重新设 计的时间。如果更改了子表单的某个域,则用到该子表单的每个表单都会更新。子表单的一般用法包括:向商务文档中添加公司标志,或向邮件和便笺表单中添加邮 寄标签信息。子表单可以作为表单的永久部件,或者可以根据公式的结果有条件地显示。例如:可以给用户提供一种选择,允许用户使用不同的图像和样式来为各种 类型的邮件消息定制邮件表单,例如便笺、警告或信函。在子表单中用到的域名不能在表单的其他地方使用。对子表单所做的更改将影响到所有使用该子表单的表单 和文档。
3.域(Field):域是构成表单的重要元素,对一个Notes数据库来说,外部数据的录入要通过域,库内存放数 据显示也要依靠域。域类型确定了域可以包含的信息类型。用户可以在“域属性”框中定义域类型。域类型是:文本、日期/时间、数字、对话框列表、复选框、单 选按钮、列表框、组合框、RTF 文本、作者、姓名、读者、口令和公式。域的主要属性是:
可编辑:数据可以通过按钮执行公式(Formulas)或脚本(Script)来产生。
隐含的:只作存储,没有显示作用,显示文档时不显示该域的数据。
准许多值:单一域准许用户存入多个值。
4.文档(Document):在Lotus Notes中,信息是以文档的形式保存在数据库中的,一个文档相当于关系型数据库中的一个记录。
5.视图(View):视图是 Lotus Notes中文档的主要浏览窗口,当一个视图的选择条件给定以后,通过该视图所看到的文档就是符合条件的文档,每一视图都包含符合一定条件的文档。视图除 了有选择条件外,还可以按不同的特性将文档进行分类和排序,使得我们可以及其快捷地导航到要查找的文档。对于简单的查询,可以不编写任何程序,而通过把视 图按合理的方式进行分类和排序就可以了。对用户来说是直观的,可打印输出屏幕上显示的视图。如某一视图的选择条件为:Select form="通知";则打开该视图后,我们所看到的文档都是通知。
6.文件夹(Folder): 文件夹也是文档的浏览窗口之一,但是和视图不同的是,文件夹没有选择条件。由于Lotus Notes的文档是可以共享的,文件夹也可以共享,也可以私有。里面的文档通过Putinfolder放进去,必须通过RemoveFromFolder 来将其中的文档移开。
不难看出,在Notes的文档数据库当中,模式也是表格的定义表单(Form)和域(Field),它用来向用户显示和保存数据。而外模式通常是一个用户的能看到视图(View)或是文件夹(Folder)。
从某种角度来看,一方面表单(Form)提供用户浏览保存在NSF文件中的文档信息的方法,Form也是一种内模式 的机制,我们可以实现为不同的用户定制不同的Form,以达到不同的用户他们能看到的文档信息(Form)是不同的。另一方面由于在Notes当中,表单 (Form)本身并不保存在文档里,只在显示文档时才起作用,Form也是一种数据库的外模式的体现。另外不像关系数据库,一个Table中的一行数据就 必须是符合Table定义的。Notes文档数据库中的一份文档可以不符合任何的格式定义,也没有相应的数据约束,数据约束只在用户透过Form输入数据 时是有效的。
我们可以认为,Notes中视图(View)或是文件夹(Folder)是一个外模式,它提供用户浏览和查找文档数 据的方法,我们可以为不同的用户定制不同的视图或文件夹。例如:在常见的公文处理应用中,文件审批者和承办人,能看到视图的内容是不一样的。
我们知道在数据库理论中,有外模式、模式和内模式之分。外模式(又称子模式或用户模式)是数据库用户使用的局部数据 的逻辑结构和特征的描述,是数据库用户的数据视图,如视图和表的结构、类型、长度、保密级别等。模式是数据库中全体数据的逻辑结构和特征的描述,是所有用 户的公共数据视图,如不同表的结构、类型、长度、保密级别等,以及表和表之间的各种逻辑关系。内模式(又称物理模式)是数据物理结构和存储方式的描述,是 数据在数据库内部的表示方式,如存储、索引方式以及数据压缩、加密和聚簇等。为了对Notes文档数据库和关系数据库进行比较,下面让我们来了解一下 Notes文档数据库的相关概念。
1.Notes 数据库文件 (.NSF):数据库文件包容应用程序的数据,其结构由表单、域、文件夹、视图及其他显示功能部件(诸如导航器和数据库图标)组成。具体分两个部分:设计 元素、数据文档。设计元素就是表单(Form)、域(Field)、视图(View)和文件夹(Folder)等等,它们构成了应用的基础。数据文档 (Document)是用户提交的数据信息。形象来说,它就是用户保存在Form中的文档,例如:一份公文。
2.表单(Form):NSF数据库文件中,一个NSF数据库中可定义多个表单,表单由多个表单元素组成。表单元素 是用于创建表单外观和功能的组件。和页面一样,表单可以包含:文本、水平基准线、表格、区段、图形、图像映射、链接、自动功能、小程序、附件、嵌入元素和 HTML。表单可由多个子表单组成,子表单是表单元素集合,它作为一个单独的对象来保存。子表单可以包含与常规表单相同的元素。使用子表单可以节省重新设 计的时间。如果更改了子表单的某个域,则用到该子表单的每个表单都会更新。子表单的一般用法包括:向商务文档中添加公司标志,或向邮件和便笺表单中添加邮 寄标签信息。子表单可以作为表单的永久部件,或者可以根据公式的结果有条件地显示。例如:可以给用户提供一种选择,允许用户使用不同的图像和样式来为各种 类型的邮件消息定制邮件表单,例如便笺、警告或信函。在子表单中用到的域名不能在表单的其他地方使用。对子表单所做的更改将影响到所有使用该子表单的表单 和文档。
3.域(Field):域是构成表单的重要元素,对一个Notes数据库来说,外部数据的录入要通过域,库内存放数 据显示也要依靠域。域类型确定了域可以包含的信息类型。用户可以在“域属性”框中定义域类型。域类型是:文本、日期/时间、数字、对话框列表、复选框、单 选按钮、列表框、组合框、RTF 文本、作者、姓名、读者、口令和公式。域的主要属性是:
可编辑:数据可以通过按钮执行公式(Formulas)或脚本(Script)来产生。
隐含的:只作存储,没有显示作用,显示文档时不显示该域的数据。
准许多值:单一域准许用户存入多个值。
4.文档(Document):在Lotus Notes中,信息是以文档的形式保存在数据库中的,一个文档相当于关系型数据库中的一个记录。
5.视图(View):视图是 Lotus Notes中文档的主要浏览窗口,当一个视图的选择条件给定以后,通过该视图所看到的文档就是符合条件的文档,每一视图都包含符合一定条件的文档。视图除 了有选择条件外,还可以按不同的特性将文档进行分类和排序,使得我们可以及其快捷地导航到要查找的文档。对于简单的查询,可以不编写任何程序,而通过把视 图按合理的方式进行分类和排序就可以了。对用户来说是直观的,可打印输出屏幕上显示的视图。如某一视图的选择条件为:Select form="通知";则打开该视图后,我们所看到的文档都是通知。
6.文件夹(Folder): 文件夹也是文档的浏览窗口之一,但是和视图不同的是,文件夹没有选择条件。由于Lotus Notes的文档是可以共享的,文件夹也可以共享,也可以私有。里面的文档通过Putinfolder放进去,必须通过RemoveFromFolder 来将其中的文档移开。
不难看出,在Notes的文档数据库当中,模式也是表格的定义表单(Form)和域(Field),它用来向用户显示和保存数据。而外模式通常是一个用户的能看到视图(View)或是文件夹(Folder)。
从某种角度来看,一方面表单(Form)提供用户浏览保存在NSF文件中的文档信息的方法,Form也是一种内模式 的机制,我们可以实现为不同的用户定制不同的Form,以达到不同的用户他们能看到的文档信息(Form)是不同的。另一方面由于在Notes当中,表单 (Form)本身并不保存在文档里,只在显示文档时才起作用,Form也是一种数据库的外模式的体现。另外不像关系数据库,一个Table中的一行数据就 必须是符合Table定义的。Notes文档数据库中的一份文档可以不符合任何的格式定义,也没有相应的数据约束,数据约束只在用户透过Form输入数据 时是有效的。
我们可以认为,Notes中视图(View)或是文件夹(Folder)是一个外模式,它提供用户浏览和查找文档数 据的方法,我们可以为不同的用户定制不同的视图或文件夹。例如:在常见的公文处理应用中,文件审批者和承办人,能看到视图的内容是不一样的。