摘要:通过对各高校管理随书光盘的现状分析,设计开发了随书光盘网上发布系统。系统采用基于ASP技术、Access数据库、OPAC的Web管理模式开发。文中主要讨论了该系统的数据库的设计与实现。
论文关键词:随书光盘,Access数据库,Web

近几年来随着计算机网络技术、多媒体技术的发展,由于各种科技形式的需要,附带光盘的图书大量出版。而随书附盘图书不同于普通图书,书中的光盘由书附带,但需要借助计算机阅读,并随书一起以传统的印刷形式出版。因此对于光盘的有效管理迫在眉睫。
目前国内主要有三种随书光盘网络化管理方式:基于光盘库的网络管理模式、基于专用软件的网络管理模式、基于ASP[1]技术、Access数据库、OPAC的Web管理模式。其中第三种开发模式是较为经济且实用的,本文就是基于Web的这种管理模式进行设计与开发的。据调研,现在一些高校已采用此模式进行开发,因为其硬件容易配备,软件容易开发,而且伸缩性较强,对随书光盘资源选择性上网的图书馆最为适合,光盘内容的管理与查找很方便。
2.光盘发布系统数据库结构分析
系统数据库的设计是系统设计中一个很重要的部分,本馆要想自建一个随书光盘系统必须要建立一个新的带有随书光盘的书的数据库。
由于我馆采用的是汇文文献信息服务系统,C/S方式,后台数据库采用oracle数据库。oracle数据库是一个功能及其强大和灵活的关系型数据库系统,但是由于购买的是成品软件,数据库设计当中并没有专门的随书光盘的图书的库,并且在文献录入时,对于带有随书光盘的图书也未加标识。这样对于之后的自主开发随书光盘系统带来了一定的难度。因此我们在开发中要就需要重新建立相关的数据库,起先可以小批量的输入一些数据用来测试使用,随着系统的不断成熟发展在加大数据量来满足读者的需求。
虽然可以采用多种数据库系统来从事ASP网页数据库的设计,但是由于Access取得较为容易,使用方便,因此随书光盘网上发布系统采用Access数据库[2],数据库名称为MirrorCD。数据库内包含一些数据表,系统通过对数据表的操作进行光盘的管理。
3数据库表设计
3.1数据库部分表结构
光盘发布系统包括以下几个表:附盘图书信息表(DB_bookinfo)、光盘镜像信息表(DB_CDinfo)、光盘分类查询表、下载记录表(DB_download)。这里我们主要给出了两个表的具体结构:
3.1.1光盘镜像信息表
光盘镜像信息表(DB_CDinfo)用来存储光盘镜像的基本信息。表DB_CDinfo的结构如表2:
表1光盘镜像信息表
Tab.4.2 CDs’information table structure
序号
字段名称
描 述
数据类型
字段大小
允许空字符串
1
Cd_id
光盘号
自动编号
长整形
否
2
BookID
ID信息
文本
50
否
3
ISO_name
镜像光盘名称
文本
40
否
4
ISO_size
镜像光盘大小
文本
10
5
ISO_path
镜像光盘路径
超链接
否
6
ISO_date
收录日期
文本
8
否
7
click
点击次数
数字
整型
否
8
Sort_ID
光盘主分类号
数字
整型
否
3.1.2光盘分类查询表
在很多其他高校的随书光盘发布系统中,都有分类查询的功能,但大都是按中国图书馆图书分类法进行分类的,分成经济类、艺术类、语言类等二十三类。但当前许多图书都是计算机类、语言类等带有随书光盘。针对这一点,我没有采用多数高校的做法,而是对光盘进行重新分类。将带有随书光盘[3]最多的计算机大类分成几个小类,如计算机软件类、数据库技术类、网络技术类等。还有随书光盘较多的经济类和语言类,这样去除了许多平时就没有随书光盘的类别,大大提高了查询效率。
因此在这里光盘分类查询表(DB_CDindex)实现光盘分类数据导航,提供读者按类快速查询自己选择的类别。光盘分类查询表(DB_CDindex)的结构如表2:
表2光盘分类查询表
Tab.4.3 CDindex table structure
序号
字段名称
描 述
数据类型
字段大小
允许空字符串
1
Sort_ID
光盘主分类号
数字
长整形
否
2
Leiscr1
主分类描述
文本
50
否
3
Leiscr2
主分类对应的馆藏号
文本
40
否
系统对数据表的查询,采用主键严格关联技术,动态实现光盘数据的多表查询,三个数据表通过BookID字段关联,即保证了数据的完整性,又保证了检索查询的速度。
3.2数据库表的关联
为实现数据的实体和参照完整性,在表之间建立关联,用E-R图表示部分关联如图:
通过数据库的有效关联,可以提高数据查询速度,有效提高随书光盘系统的使用效率。
3.3数据库连接的实现
本系统利用ASP通过ADO进行数据库编程,对于Web页面而言,大多数页面的顶部是相同的,这时将这些相同的部分放在一个文件中,在需要时引用它。在本系统中,不管浏览、检索还是光盘的管理,都需要打开数据库这一操作十分频繁,所以使用include的方法简化代码,以便修改和查找。系统中连接数据库部分的代码如下:
Public connstr, path As String
Public conn As New ADODB.Connection
'/***************************************************
'/打开数据库连接 ADO 连接
'/***************************************************
Public Function adoDbConect() As Boolean
path = App.path
If Right(path, 1) <> '' Then path = path & ''
On Error GoTo err_exit
connstr = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ' & path & 'book.mdb;Persist Security Info=false'
conn.Open connstr
adoDbConect = True
Exit Function
err_exit:
MsgBox '打开数据库错误!
1/2 1 2 下一页 尾页 |