药品进销存管理系统数据库课程设计_第1页
药品进销存管理系统数据库课程设计_第2页
药品进销存管理系统数据库课程设计_第3页
药品进销存管理系统数据库课程设计_第4页
药品进销存管理系统数据库课程设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库课程设计报告课 题: 药品进销存管理系统 专业班级: 计算机科学与技术 学 号: 姓 名: 指导教师: 老师 学 院: 信息工程学院 2015年6月18日目录摘 要 21 课程设计的目的和意义32 需求分析43总体设计54.详细设计64 系统实现05 系统调试0小结0参考文献0摘 要信息时代已经来临,信息处理的利器计算机,应用于商品的日常管理,为经济管理的现代化带来了从未有过的动力和机遇,为商品销售领域的发展提供了无限的潜力。采用计算机管理信息系统已成为商品管理科学化和现代化的标志,给销售商带来了明显的经济效益和社会效益。   这个数据库系统是一个药品进销存管理系统,包括药品销

2、售界面、库存查询界面以及药品信息查询界面,分别有添加、删除、查阅等功能。药品进销存管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我们使用visual Studio 2010以及SQL2008开发工具,利用其易于上手和强大的数据库支持,方便我们快速开发出这个系统。1 课程设计的目的和意义药品管理是商品管理的一种。一些大中型的医院、药品专卖店或药房,往往存在对药品的进销存管理问题。采用传统的管理方式费工费时、效率低下。因此设计出一款能够满足需要的软件,不

3、仅能使办公效率大大提升,也对管理的科学性、安全性、可预见性方面提供了依据。这对企业来说节约了成本、提高了可靠性,也更便于操作。2 需求分析这个系统是面向销售方的。所以应从他们的角度考虑,系统应方便他们对药品进行日常管理,所以大体上包括以下内容:药品销售的管理、药品入库的管理、库存的管理、药品基本信息的管理,在药品销售窗体中,功能基本上包括基本药品的查询及选购数量和总价,一些简单的计算包括录入销售单价和数量之后自动计算出总额,在入库管理中,功能基本上包括药品添加、删除和修改等等;在库存管理窗体中基本功能包括基本库存信息的浏览和查询等。数据库方面,和前面的功能相对应的,包括三个表:登录表、库存表、

4、药品信息表。登录表中主要存储用户的账号和密码信息,库存表中存储的包括每一种药品的现存量,药品信息表中存储每一种药品的基本信息,包括药品名称、用量等。库存与销售之间的联系时这样的,销售一次药品,库存信息表中的相应的药品的数量减掉销售的数量。这些功能基本上满足了一个销售方的对日常药品的管理需求,能够在一定程度上加快管理的效率,提高管理的效率和可靠性。可行性分析可行性分析是系统分析阶段的第二项活动,它的主要目是进一步明确系统的目标、规模与功能,对系统开发背景、必要性和意义进行了调查分析并根据需要和可能提出开发系统的初步方案与计划。可行性分析是对系统进行全面、概要的分析。通过调查分析,本系统设计主要有

5、以下三个可行性:.1 操作可行性本系统操作简单,易于理解,只需通过简单指导,上手较快,运行环境要求低。技术可行性本系统利用Visual studio2010开发工具,并使用SQL Server 2012作为数据库管理系统,来实现医院药品进销存系统的各种功能。SQL Server 2012属于主从时式的数据库服务器这也是主从式数据库服务器的特点,服务器本身重在数据的管理,为客户端应用程序提供一致的接口。3总体设计本系统将涉及多个窗体的制作,从而实现多项管理功能。期中包括对药品信息的管理,它专门用于对药品的各种信息的管理;对药品进货的管理;对药品销售的管理;对药品库存的管理。在这些数据管理中,还可

6、以实现一些数据的自动计算功能。总共11个窗体,分别为登陆窗体、菜单选择窗体和九个功能窗体。登陆窗体要求密码和用户名都正确才能登陆,否则无法使用本系统;菜单选择窗体提示用户进行相应的功能选择;四个功能窗体分别完成药品销售、药品进货、药品信息、库存管理功能。后台数据库的设计总共有三个表,包括登录表、药品信息表、库存信息表。作为后台的支持,分别和前面的功能界面连接。C/S模式本系统事实上是基于C/S模式的信息管理系统,客户机通过服务器去访问所需要的数据库,在这里客户机就是指VB开发应用程序,服务器是指SQL Server 2000所用的服务器,本系统用的是本地服务器,系统模式图如下图2-1所示:数据

7、库数据库管理系统服务器客户机(VB)图2-1 系统模式图这里VB客户应用程序通过本地服务器连接到SQL Server 2000的数据库,访问所需要的数据信息。在学生学籍管理系统中,从而实现用户对相应的数据信息进行修改、查询和录入等操作,以达到对学生学籍方面工作的各项管理。C/S模式简介C /S模式是一种两层结构的系统:第一层是在客户机系统上结合了表示与业务逻辑;第二层是通过网络结合了数据库服务器。C/S模式主要由客户应用程序、服务器管理程序和中间件三个部分组成,以下是C/S模式的一些优点:l C/S交互性强。因为客户端有一套完整应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程

8、序间自由切换。l C/S模式提供了更安全的存取模式。由于CS配备的是点对点的结构模式,采用适用于局域网、安全性可以得到可靠的保证。l 响应速度快。由于客户端实现与服务器的直接相连,没有中间环节。l 操作界面漂亮,形式多样,可以充分满足客户自身的个性化要求。确保SQL Server 2008服务器正常工作1 SQL Server 2008安装完毕后,启动【服务管理器】,在如图2-2所示的【SQL Server 服务管理器】界面中可以查看服务器的服务是否正常启动。图2-2 【SQL Server服务管理器】界面2. 启动服务器上的【企业管理器】,查看【企业管理器】是否能够正常管理。测试SQL Se

9、rver 2008和本地服务器的连接1. 启动【查询分析器】。由于【查询分析器】首选必须连接服务器,然后才能工作。出现【连接到SQL Server】界面,在【SQL Server】文本框中输入本地服务器的别名,或者单击按钮将客户机能够自动识别的别名添加进来。完成设置后单击按钮。2. 成功连接到本地数据库服务器界面。表明连接参数配置正确,如果不能出现此界面,则需要仔细检查本地服务器参数是否正确。 其次 Vc与SQL2008建立联系各构成数据源;4.详细设计一 前台应用程序的设计总共包括11个窗体,其中有登录窗体、菜单选择窗体和九个功能窗体,九个功能窗体包括药品信息查询窗体、药品库存查询窗体、药品

10、销售窗体、药品入库窗体及药品修改窗体等。登录窗体中包括两个lebel控件、两个按钮控件、两个textbox控件,当然要对相应的控件进行必要的设置,菜单选择窗体中就是几个简单的MenuStrip控件。分别进入功能子系统。九个功能窗体如下:药品销售窗体:一个datagridview控件和三个button控件,三个textbook控件,三个label控件。进货记录窗体资源药品信息窗体二 后台数据库的设计一个数据库,三个基本表,为每一个表建立基本的属性和主键。流程图如下开始登陆成功与否否是删除记录信息修改药物进出药品信息菜单选择图1.流程图:概念结构设计概念结构设计通常是使用E-R图对它的描述工具进行

11、设计,对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体、实体的属性,标识实体的码,确定实体之间的联系类型,设计E-R图库存药品信息库存量有效期至价格名称生产日期编号编号名称编号成分规格功能4 系统实现1. 在药品销售窗体中, 先实现药品查询以便确认,并在datagridview中显示药品信息;在查询按钮上代码如下 private void button2_Click(object sender, EventArgs e) string userName = Box1.Text; string password = Box2.Text; string connString = &quo

12、t;Data Source = . ;Initial Catalog = 医院药品进销存系统;Integrated Security = true" SqlConnection connection = new SqlConnection(connString); string sql = String.Format("select * from 药品信息 where ypcode = '0' or ypname = '1'", password, userName); dataAdapter = new SqlDataAdapte

13、r(sql, connection); dataset = new DataSet(); dataAdapter.Fill(dataset); dataGridView1.DataSource = dataset.Tables0; 2. 在确认交易按钮里添加如下代码: private void button1_Click(object sender, EventArgs e) string s = textBox3.Text; string userName = Box1.Text; string password = Box2.Text; int i = Int32.Parse(s); st

14、ring connString = "Data Source = . ;Initial Catalog =医院药品进销存系统;Integrated Security = true" SqlConnection connection = new SqlConnection(connString); string sql = String.Format("select kcamount from 库存 where ypcode ='0' or ypname ='1'", password, userName); SqlComm

15、and command = new SqlCommand(sql, connection); connection.Open(); int num = (int)command.ExecuteScalar(); int d; d = num - i; string sqll = String.Format("update 库存 set kcamount = '0' where ypcode ='1'",d, password); SqlCommand commandl = new SqlCommand(sqll, connection); i

16、nt aa = (int)commandl.ExecuteNonQuery(); if (aa > 0) MessageBox.Show("出售成功|"); 3. 在药品信息检索中的执行查询按钮中添加代码如下: string userName = Box1.Text; string password = Box2.Text; string connString = "Data Source = . ;Initial Catalog = 医院药品进销存系统Integrated Security = true" SqlConnection connec

17、tion = new SqlConnection(connString); string sql = String.Format("select * from 药品信息 where ypcode = '0' or ypname = '1'", password, userName); dataAdapter = new SqlDataAdapter(sql, connection); dataset = new DataSet(); dataAdapter.Fill(dataset); dataGridView1.DataSource = d

18、ataset.Tables0;4药品入库代码如下:库存TableAdapter.Update(医院药品进销存DataSet4.库存; MessageBox.Show("您已成功修改药品信息, "您已成功修改药品信息", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);5 修改药品信息代码如下: tring connString = "Data Source = . ;Initial Catalog = 医院药品进销存系统Integrated Security = true" SqlConnec

19、tion connection = new SqlConnection(connString); DataTable dt = new DataTable(); string update = "update 药品信息 set ypname='" + textBox2.Text.ToString() + "',price='" + textBox7.Text.ToString() + "',chengfen='" + textBox5.Text.ToString () + "'

20、,guige='" + textBox3.Text.ToString () + "',yongliang='" + textBox6.Text.ToString () + "',ypcode='" + textBox1.Text.ToString () + "' where ypcode = '"+ textBox1 .Text + "'" try connection.Open(); SqlCommand cmd = new SqlComm

21、and(update, connection); int n = cmd.ExecuteNonQuery(); if (n > 0) MessageBox.Show("修改药品成功"); else MessageBox.Show("修改药品失败"); catch (Exception ex) MessageBox.Show(ex.Message); finally connection.Close(); 6 删除药品代码: private void button1_Click(object sender, EventArgs e) string b

22、ianhao = textBox1.Text; tring connString = "Data Source = . ;Initial Catalog = 医院药品进销存系统Integrated Security = true" try connection.Open(); string sql = String.Format("delete from 药品信息 where ypcode=0", bianhao); SqlCommand cmd = new SqlCommand(sql, connection); int num = (int)cmd.

23、ExecuteNonQuery(); if (num > 0) MessageBox.Show("删除成功", ""); else MessageBox.Show("删除失败 ", ""); catch (Exception a) MessageBox.Show(a.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); finally connection.Close(); 5 系统调试系统开始运行界面如图: 图2.登陆输入

24、账号和密码后(管理员、111111)将进入菜单选择窗体,如下图:图5.菜单选择窗体进入第一个进货信息后,执行查询,如下图所示:查询单个药品返回后进入第二个功能窗体,同样执行库存查询显示如下:返回后进入药品销售窗体,图8.药品销售管理窗体返回后,进入下一个功能窗体:新品入库(购买药品药品)删除药品信息修改库存信息 小结在这次课程设计中,是对自己动手能力的一次考验,通过老师的讲解、同学的帮助和自己的课后学习,学到了很多有用的知识,对数据库知识在软件工程的应用中有了初步的了解,为以后自己的学习和工作奠定和坚实的基础。由于是第一次使用visual studio2010开发软件,在控件的使用上显得的很不

25、足,不断的通过看视屏和资料渐渐的掌握了一些常见控件的用法,在数据库的支持上也学到了很多知识,当然第一次开发出一个较复杂的系统,难免在软件的质量上会有欠完善的地方,由于时间紧迫,没能做到尽善尽美,在功能上,也没什么特别出彩的亮点,这是遗憾。当然在以后的学习中会不断的积累经验和知识,不断提高自己的能力。针对系统的不足还有以下几个方面需要进一步的完善和补充:(1)界面有待进一步改进,使其更加美观。( 2)检测系统错误需进一步完善。(3)系统的维护功能要更强。(4)数据备份和恢复更完善。在软件的美化上,前几个功能窗体基本上还加了点图片,但自己没什么美术功底,所以此软件在外观上还是有很多地方可以改进的。

26、参考文献夏邦贵编著.SQL Server数据库开发入门与范例解析.北京:机械工业出版社, 金林樵,唐军芳等编著.SQL Server数据库应用开发技术.北京:机械工业出版社,C#100个编程实例程序C#入门经典Visual C#.net程序设计教程部分源代码1 登陆private void button1_Click(object sender, EventArgs e) string userName = txtname.Text; string password = txtpwd.Text; string connString = "Data Source = . ;Initia

27、l Catalog = 医院药品进销存系统;Integrated Security = true" SqlConnection connection = new SqlConnection(connString); string sql = String.Format("select count(*) from 账户密码表 where username ='0'and code =1", userName, password); try connection.Open(); SqlCommand command = new SqlCommand(s

28、ql, connection); int num = (int)command.ExecuteScalar(); if (num > 0) MessageBox.Show("", "登录医院药品进销存系统̨?成¨¦功|", MessageBoxButtons.OK, MessageBoxIcon.Information); Form2 form = new Form2(); form.Show(); this.Visible = false; else MessageBox.Show("您输入有误

29、", "登录失败 ¹", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); catch (Exception ex) MessageBox.Show(ex.Message, "操作数据库出错", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); 2修改信息private void button1_Click(object sender, EventArgs e) string connString = "Data Sour

30、ce = . ;Initial Catalog = 医院药品进销存系统;Integrated Security = true" SqlConnection connection = new SqlConnection(connectionString); DataTable dt = new DataTable(); string update = "update 药品信息 set ypname='" + textBox2.Text.ToString() + "',price='" + textBox7.Text.ToS

31、tring() + "',chengfen='" + textBox5.Text.ToString () + "',guige='" + textBox3.Text.ToString () + "',yongliang='" + textBox6.Text.ToString () + "',ypcode='" + textBox1.Text.ToString () + "' where ypcode = '"+ te

32、xtBox1 .Text + "'" try connection.Open(); SqlCommand cmd = new SqlCommand(update, connection); int n = cmd.ExecuteNonQuery(); if (n > 0) MessageBox.Show("修改信息成¨¦功|!ê?"); else MessageBox.Show("修改信息?"); catch (Exception ex) MessageBox.Show(ex.Message); finally connection.Close(); 3删除private void button1_Click(object sender, EventArgs e) string bianhao = textBox1.Text; string connString = "Data Source = . ;Ini

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论