《数据库系统概论》课程设计2017年 06月03 日 安徽工业大学计算机学院姓 名 李根专 业 计算机科学与技术 班 级 计141 学 号 149074007 指导教师 戴小平摘要随着计算机科学技术的日益发展及信息化技术向各个领域的不断深入,人们的学习生活已越来越趋向于信息化。
为跟上时代的要求及人们生活的步伐,药店管理系统随运而生。
它的发展不仅给人们带来了很大的便利性,还在很大程度上减轻了其管理人员的工作压力,基于这一事实开发本系统。
本系统主要要实现的是药店管理系统进行药品的管理。
本系统的主要功能包括:用户操作和管理员操作。
用户操作包括:用户登录,用户注册,用户购买药品,查看药品基本信息等功能。
管理员操作包括:管理员登录,添加药品至仓库,修改药品信息,查看入库信息,出库信息,库存信息,以及从仓库出库至药店等功能。
本系统是利用Microsoft Visual Studio 2017开发工具、C#语言和Microsoft SQL Serve数据库来开发的。
关键词:药店;仓库;管理系统;目录1绪论 (3)1.1 概述 (3)1.1.1 问题的提出 (3)1.1.2 本课题的意义 (3)1.2 开发环境与工具介绍 (3)1.2.1 Microsoft Visual Studio简介 (3)1.2.2 C# 简介 (3)1.2.3 Microsoft SQL Server简介 (4)2 系统需求分析与设计 (4)2.1 用户需求分析 (4)2.1.1 用户需求 (4)2.1.3 系统性能需求 (4)2.1.4数据分析 (4)2.2 功能模块图及分模块功能描述 (5)2.2.1 系统的功能模块图 (5)2.2.2 系统功能模块简介 (5)2.3 数据库设计 (5)2.3.1 系统E-R图 (5)2.3.2 数据库逻辑结构设计 (6)3 系统实施 (8)3.1 建立数据库 (8)3.2 数据库连接 (10)3.3 主要模块实施 (10)3.3.1 登录模块的开发 (10)3.3.2 管理员主界面 (11)3.3.3 用户主界面开发 (12)3.4 系统测试 (12)3.4.1 软件测试的对象 (12)4 系统说明 (15)4.1 开发环境 (15)4.2 系统安装、配置与发布应用程序的步骤 (15)总结 (16)参考文献 (16)附录:部分源代码 (16)登录主界面源代码: (16)用户注册界面代码: (18)管理员主界面: (20)购买药品代码: (23)插入药品信息代码: (26)1绪论1.1 概述1.1.1 问题的提出如今人们的学习生活已越来越趋向于信息化,航空系统订票业务也日益发展了起来,航班订票系统的开发势在必行。
1.1.2 本课题的意义1、提高航空公司对用户信息和航班信息的管理效率,解放一部分人力资源,提高相关人员的工作效率。
2、提高用户对航班信息的查询效率3、实现航班系统信息管理流程的系统化,规范化和自动化。
1.2 开发环境与工具介绍开发工具:Microsoft Visual Studio 2017开发语言:C#数据库管理软件:Microsoft SQL Server1.2.1 Microsoft Visual Studio简介Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。
VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。
所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。
1.2.2 C# 简介C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性。
C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
1.2.3 Microsoft SQL Server简介SQL Server 是Microsoft 公司推出的关系型数据库管理系统。
具有使用方便可伸缩性好与相关软件集成程度高等优点,是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。
2 系统需求分析与设计2.1 用户需求分析2.1.1 用户需求不同的实体(用户和管理员)通过可视化操作界面登录系统后,能够对数据库中的数据进行合理的操作。
2.1.2 系统功能需求用户注册和登录管理员登录用户购买药品用户查看药品基本信息管理员添加用户药品入库管理员修改药品信息管理员查看入库出库信息管理员查看库存信息2.1.3 系统性能需求(1) 使用方便(2) 具有一定的安全性2.1.4数据分析(1)管理员信息:管理员编号,管理员密码,管理员电话(2)客户购买信息:客户编号,客户姓名,客户电话,客户购买时间,客户购买数量,客户购买药品编号,客户购买药品名称(3)客户信息表:客户姓名,客户电话,客户登录系统的密码,客户性别,客户年龄(4)药品信息表:药品编号,药品数量,药品名称,药品生产商,药品生产日期,药品食用方法,药品价格,药品保质期,药品操作人员(5)入库信息:药品编号,药品数量,药品名称,药品生产商,药品生产日期,药品入库时间(6)仓库信息:药品编号,药品数量,药品名称,药品生产商,药品产地,药品生产日期(7)出库信息:药品编号,药品数量,药品名称,药品生产商,药品生产日期,药品出库时间2.2 功能模块图及分模块功能描述2.2.1 系统的功能模块图2.2.2 系统功能模块简介用户模块:用户可以注册账号,通过输入正确的用户名和密码进入此模块,用户可在此模块进行药品的购买。
管理员模块:管理员通过输入正确的管理员用户名和密码进入此模块,管理员可在此模块进行相关的管理员操作,例如:添加新药品,修改药品信息,添加药品信息,查看出入库信息和仓库信息等。
2.3 数据库设计2.3.1 系统E-R图2.3.2 数据库逻辑结构设计3 系统实施3.1 建立数据库建admin表语句:CREATE TABLE [dbo].[admin]([adminid] INT IDENTITY (3000, 1)NOT NULL, [adminpasswd] NCHAR (10)NULL,[adminphone] NCHAR (13)NULL,PRIMARY KEY CLUSTERED ([adminid] ASC));建客户买药信息表:CREATE TABLE [dbo].[clientbuyinfo]([id] INT IDENTITY (1, 1)NOT NULL,[cliname] NCHAR (10)NOT NULL,[cliphone] NCHAR (13)NULL,[clibuytime] NCHAR (20)NULL,[clibuynumber] INT NULL,[clibuymedicineno] NCHAR (10)NULL,[climedname] NCHAR (10)NULL,CONSTRAINT [PK_clientbuyinfo] PRIMARY KEY CLUSTERED ([id] ASC) );建客户信息表:CREATE TABLE [dbo].[clientinfo]([cliname] NCHAR (10)NOT NULL,[cliphone] NCHAR (13)NULL,[clipasswd] NCHAR (16)NULL,[clisex] NCHAR (10)NULL,[cliage] NCHAR (10)NULL,CONSTRAINT [PK_clientinfo] PRIMARY KEY CLUSTERED ([cliname] ASC) );建药品信息表:CREATE TABLE [dbo].[medicineinfo]([medno] INT IDENTITY (20, 1)NOT NULL,[mednum] INT NULL,[medname] NCHAR (20)NULL,[medmanufacturer] NCHAR (10)NULL,[meddate] NCHAR (10)NULL,[medmethod] NCHAR (50)NULL,[medprice] INT NULL,[medquality] INT NULL,[medoperator] NCHAR (10)NULL,PRIMARY KEY CLUSTERED ([medno] ASC));建入库信息表:CREATE TABLE [dbo].[repoin]([medno] INT IDENTITY (20, 1)NOT NULL,[mednum] INT NULL,[medname] NCHAR (10)NULL,[medmanufaturer] NCHAR (10)NULL,[meddate] NCHAR (10)NULL,[medrepointime] NCHAR (10)NULL,PRIMARY KEY CLUSTERED ([medno] ASC));建仓库信息表:CREATE TABLE [dbo].[repoinfo]([medno] INT IDENTITY (20, 1)NOT NULL,[mednum] INT NULL,[medname] NCHAR (10)NULL,[medmanufaturer] NCHAR (10)NULL,[medlocate] NCHAR (10)NULL,[meddate] NCHAR (10)NULL,PRIMARY KEY CLUSTERED ([medno] ASC));建出库信息表:CREATE TABLE [dbo].[repoout]([medno] INT NOT NULL,[mednum] INT NULL,[medname] NCHAR (10)NULL,[medmanufaturer] NCHAR (10)NULL,[meddate] NCHAR (12)NULL,[medrepoouttime] NCHAR (10)NULL,CONSTRAINT [PK_repoout] PRIMARY KEY CLUSTERED ([medno] ASC));3.2 数据库连接创建数据库连接方法:class dataconnection{public static string str= @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=d:\用户目录\我的文档\visual studio 2017\Projects\数据库课程设计\数据库课程设计\databaseclass.mdf;Integrated Security = True";public static SqlConnection conn = new SqlConnection(dataconnection.str);public static SqlConnection get_connection(){return dataconnection.conn;}}3.3 主要模块实施3.3.1 登录模块的开发登陆界面如图所示,系统的登录模块有两种登录方式,分别是:用户登录和管理员登录。