3.1.3 数据库物理设计
3.1.3.1 数据库选型
计算机集成制造研究所科研项目管理系统是以计算机技术为手段,为用户存储、处理各种有效信息,完成各项管理活动。根据应用程序的要求,选择本软件系统采用的数据库管理系统要考虑到如下因素:
(1) 符合关系型的标准: 网络上运行的数据库必须是基于Access标准的分布式关系数据库。
(2) 数据库的体系结构 数据库系统应该是基于客户/服务器体系结构的分布式数据库,用户的应用程序运行在不同的工作站上。
(3) 事务的完整性和恢复: 数据库服务器应具有事务完整性机制,如日志文件、回退,并能从各种异常情况下恢复数据。在日常工作中能够联机地被份数据库。
(4) 分布式处理: 数据库必须支持分布式环境中节点自治的原则,以保证数据的分布式管理和完整性,对用户提供分布式透明以便于应用系统的使用。
(5) 应用开发: 数据库所支持的宿主语言应包括Visual Basic,还必须能提供足够的工具供开发者和用户选择,这些工具应涉及数据库分析设计、应用开发、调试和运行等各个不同的阶段。
根据上述要求,结合CIM研究所的具体情况,选用Microsoft Access 2000作为该系统的数据库管理系统,Access 2000是一个多用户的关系型数据库系统,它结合了Microsoft Windows NT操作系统的能力,提供一个安全的、可扩展的、易管理、高性能的客户机/服务器平台;提供了一套图形化的方便易用的工具如Enterprise Manager、Query Analyzer等;对多用户应用提供了充足的保护措施,能够阻止冲突和防止错误产生,并且能高效地给多用户分配可用的资源。
3.1.3.2 数据库结构定义
应用Access语言中的数据定义语句,定义四个基本表如下:
(1) 项目情况表
CREATE TABLE [dbo].[科研项目表] (
[序号] [char] (5) NOT NULL PRIMARY KEY,
[项目编号] [varchar] (10) NULL ,
[项目名称] [varchar] (120) NOT NULL ,
[合同号] [varchar] (12) NULL ,
[负责人1] [varchar] (20) NULL ,
[负责人2] [varchar] (20) NULL ,
[主要承担人1] [varchar] (20) NULL ,
[主要承担人2] [varchar] (20) NULL ,
[项目来源] [varchar] (30) NULL ,
[项目性质] [tinyint] NULL DEFAULT (0),
[开始日期] [smalldatetime] NULL ,
[结束日期] [smalldatetime] NULL ,
[文件柜号] [tinyint] NULL ,
[电子文档名] [varchar] (20) NULL ,
[财务编号] [char] (5) NULL ,
[总经费] [smallmoney] NULL DEFAULT (0),
[货币类型] [varchar] (10) NULL ,
[拨款数1] [smallmoney] NULL DEFAULT (0),
[拨款数2] [smallmoney] NULL DEFAULT (0),
[拨款数3] [smallmoney] NULL DEFAULT (0),
数据库安全性是数据库系统的一个重要方面,它是指保护数据库防止被不合法的使用,包括恶意的破坏和非法的存取等。但由于本系统涉及到的数据都不是保密性数据,无须采取很复杂的安全措施,只须防止数据被人随意改动即可。原系统采取的安全措施是利用SQL Server与Windows NT的安全性集成功能,由系统管理员或数据库管理员为用户分配数据库访问权限,当没有权利修改数据库的用户试图修改数据时给出相应的提示,数据库备份的工作也由数据库管理员来完成。而Access 2000的安全系统是以Microsoft SQL Server的安全系统为模型的,所以原系统的安全措施也可以保留。
3.1.3.6 磁盘空间分配
由于项目管理数据量不大、每年的增长量也不大,所以不需要很大的磁盘空间,将初始大小定义为10MB,增量为20%。
3.2 平台选型
3.2.1 选型的原则
在选择开发平台时主要考虑以下因素:
(1)开发工具的性能
l 稳定和可靠。这是最关心的性能,开发工具不能经常发生错误或在访问数据库时经常出现问题。
l 可视化的开发。只须用鼠标即可完成界面的设计,并且界面应具有流行的风格,如带有简短提示的工具条,具有Windows 95风格的Tab文件夹等。
l 提供可扩展的第四代编程语言。这样开发人员就无须关心复杂的底层工作,如Windows API等。
l 对Windows技术的广泛支持。包括对Windows 95/98上32位计算的支持以及对DDL、OLE、MDI等的支持。
l 可以生成真正的可执行文件。较之于伪代码真正的机器代码会使应用的速度和效率得到大幅度提高。
(2)数据库的访问能力
l 必须能够支持ODBC(开放式数据库互联)和数据库专用接口。
l 提供多种数据表现形式。完成对后台数据库的查询和操作是前端开发工具的主要任务。因此开发工具不许提供简便而功能强大的数据访问手段;并提供多种数据表现形式;可以生成复杂的报表。