您现在的位置: 论文网 >> 计算机论文 >> 计算机网络论文 >> 局域网图书资料查询系统论文

局域网图书资料查询系统

作者:未知
出处:论文网
时间:2006-09-06


 
 
 
 
 
 
 
 
 
 
2. 联系定义:
ER模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型

,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一

步确定是1:N,M:N,还是1:1等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是

否存在联系,多个实体类型之间是否存在联系,等等。联系定义如图4-5所示。解释如下:
l 一个用户可以保管多本图书资料,而一本图书资料只能由一个用户保管;
l 一个资料类别可以对应多本图书,而一本图书只对应一个资料类别;
l 一本图书由一个出版社出版,而一个出版社可以出版多种图书。
 
 
 
 
 
3. 设计全局ER模式
所有局部ER模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不

仅要支持所有局部ER模式,而且必须合理地表示一个完整、一致的数据库概念结构。
1)确定公共实体类型
为了给多个局部ER模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。

在这一步中我们仅根据实体类型名和键枕认定公共实体类型。一般把同名实体类型作为公共实体

类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。
2)局部ER模式的合并
合并的原则是:首先进行两两合并;先和合并那些现实世界中有联系的局部结构;合并从公共实

体类型开始,最后再加入独立的局部结构。
3)消除冲突
冲突分为三类:属性冲突、结构冲突、命名冲突。
设计全局ER模式的目的不在于把若干局部ER模式形式上合并为一个ER模式,而在于消除冲突,使

之成为能够被所有用户共同理解和接受的同一的概念模型。
3)全局ER模式的优化
在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化

。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型

的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。
4.3.2  逻辑设计
由于概念设计的结果是ER图,DBMS一般采用关系型,因此数据库的逻辑设计过程就是把ER图转化

为关系模式的过程。由于关系模型古有的优点,逻辑设计可以充分运用关系数据库规范化理论,

使设计过程形式化地进行。设计结果是一组关系模式的定义。
1)导出初始关系模式
 

图4-5  关系模式集
  2)关系子模式
子模式是用户所用到的那部分数据的描述。除了指出用户用到的数据外,还应指出数据与概念模

式中相应数据的联系,即指出概念模式与子模式之间的对应性。
图书信息子模式((编号#,资料名称,作者,出版社,出版日期,ISBN,资料类别,购买日期

,保管人,备注)用户信息子模式(编号,用户代码,用户姓名,登录口令,使用权限,查询显

示项,用户显示头像)
图4-6  部分子模式
4.3.3  数据库的实现
我们选用Microsoft Office中的Access数据库来进行数据库的逻辑设计。首先创建四个基本数据

库表如如4-1-4-5所示,然后建立各个表之间的联系,如图4-8所示。
 
 
 
 
 

 
 
 
 
第五章 局域图书资料查询系统应用程序设计
§5.1  系统模块组成
 
 
 
 
 
 
 
 
 
 
 
 
 
§5.2  登录模块实现
 
图5-2 登录模块图
  该窗口所含的控件信息如下:
 风  格 控件名 说  明
用户名 Single line edit Sle_1    ------
口令 Single line edit Sle_1 Propeties:passwd
登录日期 Edit  Mask Em_1 mask type:datamm/dd/yyyy
表5-1 登录模块控件信息表
控件:Sle_1   事件(event):Modified  Script of modified:
string input_code,namesetfocus()                  file://将光标定位在该控件

input_code=string(this.text)   file://接收用户输入的值,并赋值给变量select name into

:name from keeperwhere id=:input_code or pym=:input_code;//从用户表里查找满足输入条件

的记录if sqlca.sqlcode=0 then this.Text=name   setfocus(sle_2)  file://查找成功,则光

标跳转到“口令”控件else  if sqlca.sqlcode=100 then  messagebox("提示!",&  "对不起,

用户不存在!",&    StopSign!)  return 1  file://查找不到符合条件的记录则提示 else 

messagebox("错误!",&  "error:"+string(sqlca.sqldbcode)&  +"information:"+sqlca.

sqlerrtext) file://SQL出错提示 end ifend if
控件:Sle_2   事件(event):Modified  Script of modified:
string input_passwd,passwd,droitinput_passwd=RightTrim(this.text)//去掉输入值右边的空

格select passwd into :passwdfrom keeperwhere name=:sle_1.text;passwd=RightTrim(

passwd);//从用户表中校验口令的正确性if sqlca.sqlcode=0 then   if input_passwd <>

passwd then    messagebox('口令错误','对不起,请重新输入',stopsign!);    sle_2.

SelectText(1, Len(sle_2.Text))      this.Clear()//口令错误则清除输入内容    setfocus

(sle_2)   elseif input_passwd=passwd then   user=righttrim(sle_1.text)   select droit

into :droit      from keeper      where name=:user;//口令正确将用户操作权限赋值给变量

     open(main)//打开程序主窗口      close(w_login)//关闭登录窗口   end ifelseif

sqlca.sqlcode=100 then messagebox('提示!','无数据',Stopsign!) return 1else

messagebox("错误!",& "error:"+string(sqlca.sqldbcode)& +"information:"+sqlca.

sqlerrtext) file://SQL出错提示end if
在登录模块中,用户可输入自己的编号或编码来登录系统。系统会根据用户输入的编号或编码值

来自动给出确实已存在库中的用户中文名,若查找不到库中相匹配的记录则提示出错或重输。若

用户存在,则提示输入口令,口令正确则会顺利进入该系统主界面。

上一页 [2] [3] [4] [5] [6] 下一页

论文搜索
关键字:局域网 图书资料 查询系统
最新计算机网络论文
浅谈计算机网络维护工作和管理策略
浅议网络游戏安全问题及防范措施
调度自动化通信服务器不稳定造成四遥数据时
基于IPv6的配电自动化系统通信网络构架
大数据分析在移动通信网络优化中的应用思考
基于可扩展的计算机网络管理系统技术分析
多用户多天线FDD下行系统中空时码研究
一种基于删除准则的NOMA资源联合优化算法
基于区块链的隐私安全保护可行性分析
微博“热搜”机制的创新传播策略分析
热门计算机网络论文
计算机网络
网络安全技术的探讨
计算机网络安全问题剖析
信息安全风险管理理论在IP城域网的应用
浅析网络安全技术(一)
计算机网络管理技术及其应用
网页设计制作规范
局域网的信息安全与病毒防治策略
浅谈计算机网络中服务的概念
光纤通信技术今后如何发展