《数据库系统概论课程设计药房管理系统.doc》由会员分享,可在线阅读,更多相关《数据库系统概论课程设计药房管理系统.doc(12页珍藏版)》请在三一办公上搜索。
1、需源程序的联系QQ153893706学年论文(数据库系统概论课程设计 2009-2010 第一学期)题目:药房管理系统 作者: 所在学院:信息科学与工程学院 专业年级:计算机科学与技术06-4班 学 号: 指导教师: 职称:副教授 2010 年 1 月 9 日信息科学与工程学院学生“数据库系统概论”大作业一. 基本信息学生学号班级课程名任课教师学期得分吐鲁洪江.托呼提20061401402计06-4数据库系统概论古丽娜尔2009-2010(一)二、大作业目的:随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使用人们的生活与工作方式发生了很大的改观。网络技术的应用使得计算机之间通信
2、、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更高效地进行。数据库始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。几年前,各个药房基本上都是靠手工进行,随着各个影院的规模增大,药房不得不靠增加人力.但靠人售票具有效率底、易出错.现在沿海地区的有些城市靠电子设备来自动完成售药,可此成比较适合于小型和中型药房,很容易实现卖药操作。采用软件工程的指导方法,应用Microsoft Ac
3、cess 2003数据库,C#程序设计语言,等开发出来的基于WINDOWS系列的药房管理系统.该系统面向各个药房和售票人员,减少了部门之间工作的中间环节,提高了工作效率。三、要求1 利用本课程所学有关概念,设计出图书管理系统所用的图书库。按一下步骤进行:(1) 需求分析,确定系统边界即画出数据流图(DFD)和数据字典(DD)。(2) 概念结构设计:用三类抽象(分类、聚集、概括),形成实体、属性、码及联系,画出E-R图。画出E-R图时,查看是否有属性冲突、命名冲突和结构冲突;消除不必要的冗余,考虑函数依赖。(3) 逻辑结构设计:将E-R图转换成关系数据库管理系统所支持的逻辑结构,主要做:E-R图
4、转换成关系模式 进行数据模型优化设计用户子模式(4) 物理结构设计:分析并制定数据库的存储结构和存取方法。2 介绍选用某中DBMS创建数据库的方法和过程,用此DBMS怎么保证DB的安全性,完整性,完整性和故障恢复。3 画出图书管理系统的功能模块图,对每一个模块,写出其进行操作的SQL程序。4 写出VB或ASP 语言的DB连接语句,这些语言环境中怎么调用SQL语句。 四、大作业内容及代码、运行结果(1)需求分析:这个药房管理系统是对于各种售药单位使用的程序,该系统具有进行对管理员身份的浏览,修改、删除、添加并且进行对药房所有的药类浏览,修改、删除、查找、添加,打印,输入,输出等功能。本系统还能给
5、管理提供直接连接计算器,记事本,word,exel等应用程序。通过这个管理系统我们很好地管理药房的各种药和统计售药情况。登陆注销关于系统药物管理用户管理 返回 刷新程序回复登陆EXELWORD计算器记事本查询信息信息 统计出售量删除药物信息修改药物信息添加药物推出系统删除用户信息修改用户信息添加新用户连接EXEL连接WORD连接计算器返回主菜单连接记事本显示以进行修该的信息显示统计表添加,修改,删除,查询药物关闭系统添加,修改,删除 用户信息通过以上需求进行分析,得到以上所示的系统功能图。数据字典设计:数据项:数据项描述=编号,管理员通过编号查询药物,无别名,文本类型,4位,无取含义,编号是对
6、每个药品来说唯一的,主码数据结构:数据结构描述=药物查询,管理员通过登陆可以查询,药名,编号,生产日期,生产厂家,有效期,类型,价格,规格等等:数据流描述=药物信息流,药物信息表,药名,编号,生产日期,生产厂家,有效期,类型,价格,规格等等,平均流30/H,高峰期流100/H数据存储:数据存储描述=管理员信息,姓名,密码,药名,编号,生产日期生产厂家,有效期,类型,价格,规格处理过程:处理过程描述=添加,管理员通过这个功能添加关于药品的任何信息,修改后的药品信息,修改前的药品信息处理:管理员通过这个功能添加关于药品的任何信(2)概念结构设计:药房管理系统:该系统主要负责药房的售药管理和基本信息
7、管理,售药和进入药的基本信息等。 初步设计E-R图 管理员普通用户管理2 N用户名密码密码用户名总的E-R图管理员普通用户管理n药物信息表管理管理n NNn用户名密码药物名称编号生产日期总个数价格规格类型有效期生产厂家用户名密码(3)逻辑结构设计和数据库优化:药(药名,编号,生产日期,生产厂家,有效期,类型,价格,规格)BCNF普通用户(姓名,密码)BCNF高级用户(姓名,密码)BCNF(4)物理结构设计: 创建数据库时,可以用Microsoft Office Access语句来实现。在我们创建数据库的时候用Access来创建我们的表。然后按我们表的属性来定义了列名,指定了其数据类型,长度,允
8、许还是不允许空等。制定数据类型时,除了生产日期,价格以外其他属性比如药名,编号,生产厂家,有效期,类型,规格都是文本类型。其长度我们自己制定。我们输入属性直的时候如果超过系统所制的范围时,随时提醒出现错误的信息。如果我们按Access语句来实现的话用下面的语句:Create table student(编号 文本(4) primary key,药名 文本(20),密码 整性(6),生产日期 日期/时间(10),价格 货币(),有效期 文本(20),类型 文本 (4),规格 文本(10),生产厂家 文本(50),(5)介绍选用某中DBMS创建数据库的方法和过程,用此DBMS怎么保证DB的安全性,
9、完整性,完整性和故障恢复。安全性:数据库的安全性是指保护数据库以防止不合法的使用所造成的泄露,更改或破坏。为了保护系统的安全给定每个用户权限。比如:高级用户通过这个系统可以实现所有的操作,普通用户只能实现查询操作。完整性和故障恢复:我们通过使用ACCESS为了解决完整性和故障恢复问题我们先备份数据库。(6)画出成绩查询管理系统的功能模块图,对每一个模块,写出其进行操作的Access程序。查询代码:SELECT 姓名FROM scoreinformationWHERE 编号=74查询结果:药名消心痛片添加:insert into login values(maniger,123,高级用户);修改
10、代码: Update scoreinformation set姓名=meneger where 编号=74删除代码:Delete*from stdinformation where 编号=74写出C#语言的DB连接语句,这些语言环境中怎么调用Access语句。用户管理流程提代码:1.查询代码:通过这个代码查询药房所有药的基本信息:string constr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=泽普县人民医院药物管理系统.mdb; OleDbConnection Mycon = new OleDbConnection(constr); s
11、tring Str = Select * from 药物信息表 where 编号 like % + comboBox2.Text + %; if (comboBox1.Text != ) Str += and 药物名称 like % + comboBox1.Text + %; if (comboBox3.Text != ) Str += and 生产日期 like % + comboBox3.Text + %; if (comboBox4.Text != ) Str += and 生产厂家 like % + comboBox4.Text + %; if (comboBox5.Text != )
12、 Str += and 有效期(保质期) like % + comboBox5.Text + %; if (comboBox6.Text != ) Str += and 类型 like % + comboBox6.Text + %; if (comboBox7.Text != ) Str += and 规格 like % + comboBox7.Text + %; if (comboBox8.Text != ) Str += and 价格 like % + comboBox8.Text + %; if (comboBox9.Text != ) Str += and 总个数 like % + c
13、omboBox9.Text + %; OleDbDataAdapter ulash = new OleDbDataAdapter(Str, Mycon); DataSet f = new DataSet(); ulash.Fill(f); dataGridView1.DataSource = f.Tables0.DefaultView;2.添加代码:通过这个代码添加新进的药的基本信息:if (comboBox1.Text = | comboBox2.Text = | comboBox3.Text = | comboBox4.Text = | comboBox5.Text = | comboBo
14、x6.Text = | comboBox7.Text = | comboBox8.Text = | comboBox9.Text = ) MessageBox.Show(字段不能为空,请输入全!); /textbox 空是不能进行添加! else string constr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=泽普县人民医院药物管理系统.mdb; /编号为主码,不能重复! OleDbConnection mycon = new OleDbConnection(constr); mycon.Open(); string cmd = sel
15、ect * from 药物信息表 where 编号= +comboBox2.Text + ; OleDbCommand com = new OleDbCommand(cmd, mycon); OleDbDataReader rd = com.ExecuteReader(); if (rd.Read() MessageBox.Show(这个编号已存在.); return; string constr1 = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=泽普县人民医院药物管理系统.mdb;/实际添加 OleDbConnection mycon1 = ne
16、w OleDbConnection(constr1); mycon1.Open(); string comstr = insert into 药物信息表 values ( + comboBox1.Text + , + comboBox2.Text + , + comboBox3.Text + , + comboBox4.Text + , + comboBox5.Text+ , + comboBox6.Text + , + comboBox7.Text + , + comboBox8.Text + , + comboBox9.Text + ); OleDbCommand mycom = new
17、OleDbCommand(comstr, mycon1); mycom.ExecuteReader(); mycom.Dispose(); mycon1.Dispose(); mycon1.Close(); MessageBox.Show(添加成功!);3.修改代码:这些代码的主要作用是修改药的基本信息。string constr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=泽普县人民医院药物管理系统.mdb; OleDbConnection Mycon = new OleDbConnection(constr); string sql = u
18、pdate 药物信息表 set 药物名称= + comboBox1.Text + , 生产日期= + comboBox3.Text + , 生产厂家= + comboBox4.Text + , 有效期(保质期)= + comboBox5.Text + ,类型= + comboBox6.Text + ,规格= + comboBox7.Text + ,价格= + comboBox8.Text + ,总个数= + comboBox9.Text + where 编号= + comboBox2.Text + ; OleDbCommand com = new OleDbCommand(sql, Mycon
19、); Mycon.Open(); com.ExecuteNonQuery(); Mycon.Close(); Mycon.Dispose(); MessageBox.Show(修改成功, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information);4.删除:通过这个代码我们可以删除任何药的基本信息。string constr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=泽普县人民医院药物管理系统.mdb; string cmd = select * from 登陆表 ; OleDbConnecti
20、on mycon = new OleDbConnection(constr); OleDbDataAdapter dt = new OleDbDataAdapter(cmd, constr); DataSet ad = new DataSet(); dt.Fill(ad); dataGridView1.DataSource = ad; dataGridView1.DataSource = ad.Tables0.DefaultView;五、总结经过两个星期的上机时间学习,我对数据库系统概论有了更进一步的认识和了解,为学好它要通过把书上学到的基本概念和理论同实践相结合,做一些实际的,适合初学者的数
21、据库应用系统才能更好地学习它,然后把它使用到以后的实践中。通过实践,我发现比书上的基本概念和理论相比,做一个实际应用系统难得多,做一个系统最困难解决的问题就是把书上学过的每一个理论和概念相结合使用,还要注意的是每条语句的正确性,包括语法,格式等等。除此之外,还要最重要的事就是首先跟用户的需求进行分析,对那个行业进行了解,初步认识用户的工作顺序,遵循等等,然后根据这些画出E-R图。通过实践的学习,我认识到了实践操作的重要性,不仅仅是学习数据库系统概论,学习其他的计算机方面的知识都要重在实践,所以以后在学习过程中,我会更加注视实践操作,使自己便好地学习计算机,对我今后的学习以及将来走向工作岗位打下了稳定的基础。六、参考文献1.数据库系统概论 第四版,高等教育出版社;2.C# 技术大全 第二版,出版社;3. C# 程序设计(中国电力出版社)新疆大学课程论文(设计)、学年论文评分表题 目药房管理系统作 者吐鲁洪江.托呼提专业年级计算机06-4指导教师古丽娜尔指导教师评语及评分建议 指导教师: 年 月 日院(部)或教研室意见 学院或教研室主任: 年 月 日