Database 版 (精华区)
发信人: joy (少年自负凌云笔), 信区: Database
标 题: 利用Informix Web DataBlade 开发Web 应用(4)
发信站: 哈工大紫丁香 (Wed Jul 7 20:30:13 1999), 转信
发信人: Seraph (Seraph), 信区: Database
发信站: 白山黑水站 (Thu Jun 24 08:30:12 1999), 转信
3.数据模型
在Universal ORDBMS Server中,面向对象的继承技术用于建立数
据模型及保持其一致性,并建立可维护的数据结构。系统的数据结构
可表示如下:
这个模型转换为以下Universal DDL:
CREATEROWTYPE mis_obj_t
(
name text NOT NULL,
title text,
description text,
update_by text DEFAULT USER NOT NULL,
update_time abstime DEFAULT 'now' NOT NULL,
activate_time abstime DEFAULT 'now' NOT NULL,
expire_time abstime
);
CREATEROWTYPE file_src_obj_t
(
source_path text
) UNDER mis_obj;
CREATEROWTYPE mis_image_t
(
image_type_ref ref(image_type_t) NOT NULL,
image_type_name text virtual,
image_type_title title virtual,
mime__type_ref ref(mime_type_t) NOT NULL,
mime_type text virtual,
image large_object,
UNIQUE(name)
) UNDER file_src_obj;
CREATEROWTYPE mis_page_t
(
page_type_ref ref(page_type_t) NOT NULL,
page_type_name text virtual,
page_type_title text virtual,
mime_type_ref ref(mime_type_t) NOT NULL,
mime_type text virtual,
hyperlink setof(ref(url_t)),
page large_text,
UNIQUE(name)
) UNDER file_src_obj;
CREATE TABLE mis_obj OF TYPE mis_obj_t;
CREATE TABLE file_src_obj OF TYPE file_src_obj_t;
CREATE TABLE mis_image OF TYPE mis_image_t;
CREATE TABLE mis_page OF TYPE mis_page_t;
系统用基本的单继承,几乎每个对象都从一个"抽象的"对象继承,
这样可以确保创建的每个表一致地包含name、title和description的
信息。并且,每个表包括date/time标记,以识别某条记录的最后修改
及活动/到期的日期/时间。
每个表包括相应的类型定义,这些类型用于以后定义参数,并从Se
rver函数返回值。例如以下代码实现了页类型标记所对应的name的自
动相关检查:
CREATE FUNCTION page_type_name(mis_page_t)
RETURNS text
WITH(late)
AS
RETURN deref($1.page_type_ref).name;
--
--
※ 修改:.joy 于 Jul 7 20:32:52 修改本文.[FROM: hit-cim3.hit.edu]
--
※ 转寄:.白山黑水站 bbs.neu.edu.cn.[FROM: hit-cim3.hit.edu]
--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: joy.bbs@razorback.ne]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.289毫秒