PWSIS数据库管理子系统
按照上述建立数据库的要求与PWSIS的硬件环境,在PWSIS中数据库的建立,采用了M—340S中型机的数据库管理软件(AIM/DB)。该软件基于CODASYL的3层模式(模式、子模式和存贮模式)设计的层次鲜明,数据独立性强。
模式(Schema):基于数据的立场定义数据库。
子模式(Subschema):基于用户程序的立场定义数据库。
存贮模式(Memory schema):基于计算机的立场定义数据库。
数据库设计者通过DDL语言(Data Describtion Language)定义数据库,所有关于数据库的定义由DD/D(Data Dictionary/Directory)文件统一管理。3层模式与数据的关系见图8.3。

图8.3 三层模式与数据库的关系
下面就根据3层模式的关系,对PWSIS数据库管理子系统的设计全过程进行阐述。
1.模式定义 模式定义是数据库设计的重要阶段。在模式定义阶段,要全面分析各记录类型的数据结构,各记录类型之间的关系,以及对数据库的检索路径。
区域水盐监测预报信息系统数据库包含了11个记录类型,它们分别是近地面气象观测记录,地表水流量、水量统计记录,地下水监测记录,潜水化学分析记录,土壤水、盐分含量记录,土壤水吸力、土壤溶液记录等,各记录的数据结构如下:
(1)近地面气象观测记录(LIST-A)
数据名 数据定义 数据库中数据项名 数据格式 单位
Ta 气温 TA S99V99* ℃
Tmax 最高气温 TH S99V99 ℃
Tmin 最低气温 TL S99V99 ℃
R 降雨 RA S99V99 mm
ea 实际水气压 EA S99V99 mb
RH 相对湿度 RH1 S99V99 %
E01 水面蒸发量(小型) E1 S99V99 mm
E02 水面蒸发量 E2 S99V99 mm
V10 10米处风速 V10 S99V99 ms-1
n 日照时数 NS S99V99 h
*:S99V99中,S为符号位,V为隐含小数点位,9为数值位。
(2)地表水流量记录(LIST-B)
数据名 数据定义 数据库中数据项名 数据格式 单位
Hs 地表水水位 SH S99V99 m
Qr 地表水流量 QR S99V99 m3s-1
(3)水量统计记录(LIST-C)
数据名 数据定义 数据库中数据项名 数据格式 单位
Qg 浅井开采量 QG S99V99 104m3
Qi 抽入水量 QI S99V99 104m3
Qo 抽出水量 QO S99V99 104m3
Qw 深井开采量 QW S99V99 104m3
(4)地下水监测记录(LIST-D)
数据名 数据定义 数据库中数据项名 数据格式 单位
HS 地面高程 HS S99V99 m
dgl 地下水埋深(1日) GD(1) S99V99 m
dg6 地下水埋深(6日) GD(2) S99V99 m
dgll 地下水埋深(11日) GD(3) S99V99 m
dg16 地下水埋深(16日) GD(4) S99V99 m
dg21 地下水埋深(21日) GD(5) S99V99 m
dg26 地下水埋深(26日) GD(6) S99V99 m
(5)潜水化学分析记录(LIST-E)
数据名 数据定义 数据库中数据项名 数据格式 单位
dg 地下水埋深 GD1 99V99 m
Cg 矿化度 GC 99V99 kgm-3
EC 电导率 EC 99V99 dSm-1
pH 酸度 pH1 99V9
1/2碳酸根 CO3 999V99 molm-3
HCO3- 重碳酸根 HCO3 999V99 molm-3
Cl- 氯根 Cl 999V99 molm-3
1/2硫酸根 SO4 999V99 molm-3
1/2Ca2+钙离子 CA 999V99 molm-3
1/2Mg2+镁离子 MG 999V99 molm-3
Na+ 钠离子 NA 999V99 molm-3
K+ 钾离子 K 999V99 molm-3
(6)土壤水分、盐分含量记录(LIST-F)
数据名 数据定义 数据库中数据项名 数据格式 单位
Z 深度 ZS S9999 cm
数据名 数据定义 数据库中数据项目 数据格式 单位
6b 容重 BD 9V99 103·kgm2(gcm-8)
W 质量含水量 WM 9V99 m3m-3
Q 容积含水量 WC 99V9999 m-3m-3
EC3 电导率(1∶5) EC3 99V999 dsm-1
Sw 含盐量(重) SW 9V999 %
1/2碳酸根 CO3 999V99 molm-3
HCO3- 重碳酸根 HCO3 999V99 molm-3
Cl- 氯根 C1 999V99 molm-3
1/2硫酸根 SO4 999V99 molm-3
1/2Ca2+钙离子 CA 999V99 molm-3
1/2Mg2+镁离子 MG 999V9 molm-3
Na+ 钠离子 NA 999V9 molm-3
K+ 钾离子 K 999V9 molm-3
pH 酸度 PH-F 99V9
(7)土壤水吸力、溶液记录(LIST-G)
数据名 数据定义 数据库中数据项名 数据格式 单位
Z 深度 ZS 999 cm
S 吸力 S 99999 cm
EC1 电导率(盐传) EC1 99V999 dsm-1
EC2 电导率(溶提) EC2 99V999 dsm-1
Cl 浓度 Cl 99V99 Kgm-3(gl-1)
1/2碳酸根 CO3 999V99 molm-3
HCO3- 重碳酸根 HCO3 999V99 molm-8
Cl- 氯根 Cl 999V99 molm-3
1/2硫酸根 SO4 999V99 molm-3
1/2Ca2+钙离子 CA 999V99 molm-3
1/2Mg2+镁离子 MG 999V99 molm-3
Na+ 钠离子 NA 999V99 molm-3
K+ 钾离子 K 999V99 moml-8
数据库各记录类型之间的逻辑关系见图8.4。由图8.4可以看出,所有记录类型处在3个层次上。相邻层次的记录之间具有“父-子”关系。Ⅰ层与Ⅱ层记录之间是Ⅰ型结构,即一个“父亲”仅有也只能有一个“儿子”;Ⅱ层与Ⅲ层记录类型之间是V型结构,即一个“儿子”有两个以上“父亲”。因此,该数据库是典型的网状模型(Network Model)。
数据库提供了两个检索路径,一条检索路径是由时间类型记录进入数据库,通过时间记录检索处于Ⅲ层的各个记录类型;另一条检索路径是由观测点类型记录进入数据库的,通过观测点记录检索处于Ⅲ层的各个记录类型。由于两种检索路径,用户可以依据时间序列,检索数据库中全部测点的记录或者部分测点的记录,也可以依据观测点的顺序检索不同时间间隔内的测点记录。

图8.4 数据库逻辑结构
2.子模式定义 子模式定义规定了用户程序访问数据库的“窗口”和特权。由于在数据库系统分析中,用户没有提出特权分配问题,所以在子模式定义中将子模式定义成模式的完全子集。
3.存贮模式定义 存贮模式定义规定了数据库的物理结构。在存贮模式定义中,将所有记录类型放置在同一数据文件之中,因而具有维护方便,便于管理的优点。
4.数据库支持程序 为了使数据库有效、可靠地运行,开发了数据装入程序、数据库检索服务程序、数据库维护程序及数据库报表输出程序等,各程序的功能如下:
数据库数据装入程序:完成数据入库工作,以批处理方式运行。
数据库维护程序:实现数据库数据的增加、删除、修正操作。当数据库发生故障时,封闭故障区域,并且给出故障信息,进行故障恢复。
数据库检索服务程序:具有多种数据检索功能,它是数据库子系统与信息应用子系统之间的接口程序。能够输出A,B,D,E,F,G各类报表,表格清晰、美观(见附表1-8)。