循序渐进学习Power Builder 6.0(5-1)
第五章 数据窗口
5.1 建立数据窗口对象
要建立数据窗口对象,系统首先必须与要访问的数据库相连,这里不妨连接PowerBuilder自带的范例数据库POWERSOFT DEMO DB V5,接下来就可以创建数据窗口对象。
单击POWERBAR工具条上的DATA WINDOW按钮,系统弹出SELECT DATAWINDOW对话框,对话框中列出了当前数据库中可用的数据窗口对象。
单击NEW按钮,开始创建一个新的数据窗口对象。弹出的NEW DATAWINDOW用来选择要创建的数据窗口对象的数据源和显示风格。从对话框中可以看出数据窗口对象可以有五种数据源和十一种数据显示风格。这里并不想一一介绍,只介绍其中最常用的几种。
5.1.1 数据显示风格
首先看数据显示风格,为了看出各种显示风格的区别,首先选定数据源统一为QUICK SELECT,然后观察不同显示风格所显示出的数据样式的差别。
选中FREEFORM显示风格,然后单击OK按钮,弹出的QUICK SELECT对话框中选中DEPARTMENT表,单击ADD ALL按钮选中表的所有列,然后单击OK按钮关闭对话框。单击PAINTERBAR工具条上的divVIEW按钮,DATAWINDOW画板上显示的数据就是FREEFORM风格的,可以看出FREEFORM风格的数据的特点是一个字段占一行,字段的值就显示在字段的标题后面。看起来很清楚,这种风格特别适合用来作为数据输入的用户界面(图5-1)。
图5-1
再次从POWERBAR工具条上选择DATAWINDOW按钮,在SELECT DATAWINDOW对话框中选择NEW按钮,这次数据显示风格选择为GRAPH,然后在QUICK SELECT对话框中选中DEPARTMENT表的全部字段,确定后系统弹出GRAPH OBJECT对话框用来定义图表风格的数据窗口对象所特有的一些性质,对话框中比较重要的是CATEGORY栏,它用来选择将要生成的图表的横轴的含义,比如这里选中DEPT-ID字段作为横轴,表示横轴上的每一列代表某个特定PT-ID字段的值。与CATEGORY栏密切相关的是VALUE一栏的值,比如这里选中SUM(DEPT-HEAD-ID FOR GRAPH),这样表示在要创建的图表中对应横轴上每个特定的DEPT-ID字段的值,把在DEPATTMENT表中所有DEPT-ID字段的值等于这个特定值的记录的DEPT-HEAD-ID字段的值全加在一起,然后作为图表纵轴的值显示图表,设好这两项后单击OK按钮,DATAWINDOW画板中显示的就是GRAPH风格显示的数据的样式,要注意的是这里的图表并没有显示出真正的数据,只是一个示意图。要显示真正的数据可以单击PAINTERBAR工具条上的divVIEW按钮,真实数据的图表就显示在数据窗口画板中(图5-2)。总之GRAPH风格显示的数据的特点是直观形象。同时也带有一定的统计功能,使用它可以为你的应用程序增色不少。
图5-2
用类似的方法创建一个GRID风格的数据窗口对象,GRID风格显示的数据的特点是数据的行和列之间用网格线分割,数据就放在网格之中。
接下来学习TABULAR风格的数据,用类似的方法创建TABULAR风格的数据窗口对象,现在数据窗口画板中显示的就是TABULAR风格的数据(图5-3),可以看出TABULAR显示风格和GRID风格有点类似,但它没有网格线,正因为这一点,在设计TABULAR风格时比GRID风格有更大的灵活性,比如你可以在设计时把字段的标题放在喜欢的地方,同时还可以对数据进行分组等。关于显示风格就介绍常用的这几个,只要经常使用,你就会对各种显示风格更加熟悉,用起来也会得心应手。
图5-3
5.1.2 数据源
接下来学习一下创建数据窗口对象时选择不同的数据源的区别。这次数据显示风格我们固定为GRID显示格式。
首先讨论QUICK SELECT类型的数据源,用和前面类似的方法创建数据窗口对象,在NEW DATAWINDOW对话框,选中的是QUICK SELECT数据源,在接下来的QUICE SELECT对话框中就可以选择当前数据库中的表。QUICK SELECT类型的数据源的特点是数据查询比较简单,往往只涉及到一个表,复杂一点的也只是涉及到几个本来就有联系的表,要指出的是对选中的字段还可以定义字段排序,数据过滤等简单的操作。对于比较简单的数据源,一般就用这种类型的数据源。
如果在NEW DATAWINDOW对话框中选择SQL SELECT数据源,系统弹出SELECT TABLE对话框,这意味着我们可以为数据源选择任意多的当前数据库中的表,这里不妨选中先前创建的DEPARTMENT和EMPLOYEE表后单击OPEN按钮,数据窗口画板的上部显示的就是刚才被选中的表,而画板的下部的几个标签就是用来定义标准的SQL语句用来生成数据源(图5-4)。不妨选中两个表中的一些字段,然后单击SYNTAX标签,标签下面的工作区中显示的就是定义数据源的标准的SQL语句。关于这里几个标签的含义和用法可以参照前面的视图定义部分,这里就不详细介绍了。
图5-4
接下来介绍QUERY类型的数据源,在NEW DATAWINDOW对话框中选中QUERY数据源,然后单击OK按钮,这时弹出SELECT QUERY对话框,用来选择一个已有的QUERY对象,如果没有可用的QUERY对象,就需要创建一个新的QUERY对象,单击POWERBAR工具条上的QUERY按钮,在弹出的SELECT QUERY对话框中选择NEW按钮,系统弹出SELECT TABLES对话框用来选择要创建的QUERY对象所基于的表,这里不妨选中DEPARTMENT和EMPLOYEE两个表,然后单击OPEN按钮,接下来就可以定义QUERY对象的具体内容了,可以发现创建QUERY对象和生成视图的操作是基本一样的,所以这里就不详细介绍了,要指出的是之所以要创建和使用QUERY对象的好处在于创建这样一个对象后就可以被许多的应用程序所共享。这里选择两个表的一些字段后给这个QUERY对象起名为MYQUERY,然后保存起来。在NEW DATAWINDOW对话框中单击OK按钮,现在就可以在SELECT QUERY 对话框选中刚创建的QUERY对象,然后单击OK按钮,就创建了数据源类型为QUERY的数据窗口对象。
对于EXTERNAL和STORED PROCEDURE两种类型的数据源这里只做扼要的介绍,EXTERNAL类型的数据源并不是来自数据库,而是来自外部过程的结果。而STORED PROCEDURE类型的数据源则要求系统的数据库管理系统支持存储过程的概念。而这种类型的数据源的真正的数据来自于存储过程操作的结果。