计算机教程 第7章值列表类.pdfVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载 第7章 值 列 表 类 我们在第4章简单地讨论过值列表。然而,还需要做更详细的讨论,因为值列表类是数据 库设计的一个重要方面。一个值列表类支持一个或多个对象类中的一个或多个属性。这些类 存储系统中的一组合法值。值列表类中的对象与真实世界中的对象没有对应关系。它们只是 其他属性的合法值而已。 随着对象-关系建模方法的出现,当过载和一般化更多的表时,我们将建立主表对象类。 必须对这些主表对象类进行分类,以确定对象类中每个对象的类型。通过使用本书介绍的技 巧,一个数据模型中可能有超过一半的对象类是值列表类。 使用数据模型试图达到什么目标?我们在试图存储有关一个组织的信息。但我们需要存 储正确的信息。通常有许多业务规则定义字段的合法值。建立数据模型的一大部分工作是在 数据模型中尽可能多地合并这些规则。达到这一目标的最有效的方法之一是通过字段值的域 合法性检查,这意味着为每个字段确定一组合法值。 7.1 对象类还是值列表类 通常很难决定应将一组给定项指定为常规对象类还是值列表类。例如,在一个类中存放 着一些国家用于提供地址信息,对于该类是对象类还是值列表类可能会有争论。很明显,国 家是真实世界中人们关注的事物。然而,对于大多数系统来说,这是一个外部的、极少变化 的静态列表。 如果一个类满足以下一项或几项标准,我们就说它是一个值列表类: 1) 组成这个类的项不代表真实世界中任何特定的对象,如性别和三原色。 2) 这个类由一些合法值组成,而这些合法值实际上是一些选择项。如某个给定汽车制造 商所生产汽车的有效颜色。 3) 组成这个类的值完全是系统外部的值,但代表的真实事物是可变的。我们可能只对这 些值的一部分感兴趣,如国家、州、省、邮政编码、电话局。 4) 该类由人为的、内部的值分组组成,且这些分组是相对稳定的。如地理区域,又例如 一个零售商店将某个外衣型号指定为“ S p r i n g ”或“F a l l ”。 是什么使得一个值列表类有别于任何一个其他的对象类?从功能上,值列表类通过一个 集中的管理功能来维护,它们比主类更趋于稳定。值列表类的概念必须包含用户一方的意图。 值列表类究竟本身是人们关注的事物呢,还是仅仅为了验证系统中其他的域?即便是带有某 种意向,任何两个用户也可能有不同的观点。幸运的是,错误地将一个对象类归为值列表类 不会造成实际的损失。没有什么能阻止一个核心的数据表具有与值列表类相同的结构,并用 同样的方法来维护。你可能会说根本没有必要使用值列表类。尽管没有一个清晰、精确的定 义来决定在任何情况下一个给定的对象类是否为值列表类,但它们毕境是划分对象类的一种 有效的方式。 有一点需要注意:在我们的工作系统中,许多核心数据表被错误地指定为值列表类。这 84计计第二部分 数据库的组成部分 下载 自然而然地导致了一个假设:对这些结构不需要什么分析。不幸的是,大量的分析被忽略了, 系统大部分的开发任务被耽搁了。 7.2 什么属于值列表类 一旦定义了一个值列表类,就需要决定它应该包含哪些属性。一个值列表类适当的属性 包括如下内容: ■ 代码。对象类的一个描述性的短标识符,长度为 2 ~ 1 0个字符。通常需要有这样的描述, 特别是考虑空间因素时。 ■ 值名称。对值列表对象的一个长度为 4 0 ~ 8 0字符的描述。 ■ A C T I V E _ Y N 。一个指示器,从值列表类中删除对象后仍然允许它存在,以便将来它能 够历史地附加。在数据仓库中通常不需要这样的指示器。 ■ 序号。一个数字,用于提供值的逻辑排序序号。 也可以加入标准的系统审核列,如 C R E AT E _ D T 、C R E AT E _ B Y 、M O D _ D T和M O D _ B Y 。 下面的表管理Purchase Orders (即P O )的状态值。注意前缀”V L _ ”,这个前缀表明该对 象类是一个值列表对象类。同时注意,该表的名字 ( 即P O )将参照该值列表类的对象,它包含 在该值列表类的名字中了 ( 即V L _ P O _ S TAT U S ) ,如代码7 - 1所示。

您可能关注的文档

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档