电脑销售管理系统数据库课程设计.docx
《电脑销售管理系统数据库课程设计.docx》由会员分享,可在线阅读,更多相关《电脑销售管理系统数据库课程设计.docx(17页珍藏版)》请在冰豆网上搜索。
电脑销售管理系统数据库课程设计
数据库原理与应用
课程设计(论文)
电脑销售管理系统
院(系)名称
电子与信息工程学院
专业班级
软件工程
学号
学生姓名
指导教师
起止时间:
—
课程设计(论文)任务及评语
院(系):
电子与信息工程学院教研室:
软件工程
学号
学生姓名
专业班级
课程设计(论文)题目
电脑销售管理系统
课程设计(论文)任务
任务要求:
电脑销售管理系统实现以下几个功能:
查询、修改、插入、删除商品信息;查询员工信息等。
技术要求:
1、按照ER图的设计步骤进行设计;
2、前台界面使用C#制作;
3、后台数据库使用SQLserver2008;
4、使用C#与SQL数据库连接;
5、数据库设计范式要达到3NF;
6、代码编写不少于200行。
指导教师评语及成绩
平时成绩:
答辩成绩:
论文成绩:
总成绩:
指导教师签字:
年月日
注:
平时成绩占20%,答辩成绩占40%,论文成绩占40%。
摘要
电脑管理是通过采购、仓储、综合、出库、配送等活动,解决物资供需之间存在的时间、空间、数量、品种、价格等方面的矛盾,以此衔接社会生产的各环节,从而确保生产的顺利进行。
随着社会经济的发展,当企业的物流业务发展到一定规模之后,执行效率就成为物流发展的瓶颈。
计算机信息管理技术的迅速发展恰恰解决了这个问题,它使计算机技术与现代管理技术相互配合,来更加准确、高速地完成工业企业日常的电脑销售管理工作,使企业能够以最少的人员来完成更多的工作。
系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
本系统使用SQLServer2008建立数据库后台,使用C#进行前台界面和处理程序的开发,前者建立成数据一致性和完整性强、数据安全性好的数据库,而后者具有应用程序功能完备,易使用等特点。
关键词:
电脑;销售管理系统;C#
第1章绪论
研究背景
电脑销售管理系统是管理电脑销售的重要工具,是电脑专卖店不可或缺的部分。
随着电脑的销量的不断增加,销售管理系统的数量也不断的上涨。
管理工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。
并且这种传统的方式存在着很多的弊端,如:
保密性差、查询不便、效率低,很难维护和更新等。
然而,本系统针对以上缺点能够极大地提高超市管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。
所以如何自动高效地管理信息是这些年来许多人所研究的。
开发意义
随着这些年电脑计算机的速度质的提高,成本的下降,IT互联网大众趋势的发展。
我们使用电脑的高效率才处理数据信息成为可能。
电脑销售管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。
友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。
通过这个系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量?
毋庸置疑,切实有效地把计算机管理引入电脑销售管理中,对于促进电脑管理制度,提高电脑专卖店的销量和管理有着显着意义?
第2章系统需求分析
开发环境和软件
(1)操作系统:
Windows10
(2)数据库软件:
SQLServer2008
(3)开发工具:
MicrosoftVisualStudio2015
C#
C#是发布的一种面向对象的、运行于之上的高级程序设计语言。
并定于在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员AndersHejlsberg的最新成果。
C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。
但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。
C#是一种安全的、稳定的、简单的、优雅的,由C和衍生出来的的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有以及不允许多重继承)。
C#综合了简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向编程的支持成为开发的首选语言。
?
C#是的编程语言。
它使得程序员可以快速地编写各种基于MICROSOFT.NET平台的应用程序,MICROSOFT.NET提供了一系列的和服务来最大程度地开发利用计算与通讯领域。
C#使得C++程序员可以高效的开发程序,且因可调用由C/C++编写的本机原生函数,因此绝不损失C/C++原有的强大的功能。
因为这种关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。
SQLServer数据库
数据库技术是计算机软件的一个重要分支,它产生于20世纪60年代,最早是由IBM公司推出的IMS数据库系统。
数据库技术从开始到现在大致经历了三个阶段,分别是:
人工管理阶段、文件管理阶段和数据库管理阶段。
SQLServer2008为加密和密钥管理提供了一个全面的解决方案。
为了满足不断发展的对数据中心的信息的更强安全性的需求,公司投资给供应商来管理公司内的安全密钥。
SQLServer2008通过支持第三方密钥管理和硬件安全模块(HSM)产品为这个需求提供了很好的支持。
SQLServer2008为关键任务应用程序提供了强大的安全特性、可靠性和可扩展性。
1.保护你的信息:
简单的数据加密,外键管理,增强了审查.
2.确保业务可持续性:
改进了数据库镜像,热添加CPU
3.最佳的和可预测的系统性能:
性能数据的采集,扩展事件,备份压缩,资源监控器,稳定的计划
SQLServer2008为任务应用程序提供高效效率
基于政策的管理:
基于政策管理,自动管理
1.改进了安装
2.加速开发过程:
实体框架,语言级集成查询能力,CLR集成和对象服务,ServiceBroker可扩展性,Transact-SQL的改进
3.偶尔连接系统
4.不只是关系数据:
HIERARCHYID,FILESTREAM数据,集成的全文检索,稀疏列,大型的用户定义的类型,地理信息
SQLServer2008智能化
1.集成任何数据:
数据压缩,备份压缩,分区表并行,星型联接查询优化器,资源监控器,分组设置,捕获变更设置,MERGESQL语句,可扩展的集成服务
2.发送相应的报表:
企业报表引擎,新的报表设计器,强大的可视化,MicrosoftOffice渲染,MicrosoftSharePoint®集成
3.使用户获得全面的洞察力:
设计为可扩展的,块计算,回写到MOLAP,预测分析
系统功能分析
电脑销售管理系统,可用于电脑专卖店的电脑销售信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。
该软件用C#语言编写,用SQLServer2008数据库作为后台的数据库进行信息的存储,用SQL语句完成电脑信息的添加,查询,修改,删除的操作以及员工信息的录入,修改,删除等。
用ODBC驱动实现前台C#与后台SQL数据库的连接。
SQLServer2008数据库高效安全,两者结合可相互利用各自的优势。
该系统实现的大致功能:
用户登陆界面。
该界面需使用用户账号密码。
用户名和密码输入正确即可登录电脑销售界面。
提供了商品信息的查询,相关员工查询。
登录的用户信息分别存储在SQL数据库的“admin”表中,如果用户信息不存在表中,将会无权利登录本管理系统。
保证了超市销售系统的安全性。
第3章系统设计
系统功能结构设计
图系统功能结构图
数据库概念结构设计
图数据库概念结构图
数据库逻辑结构设计
表商品表
字段名称
数据类型
NULL
键
字段描述
电脑号
varchar(20)
非空
PK
商品号
电脑名
varchar(30)
非空
商品名称
售价
varchar(50)
非空
商品价格
销量
int
非空
商品销量
电脑号即商品编号,是用于标识商品的唯一编号,用于商家发布商品产生的记录。
该编号在发布一条商品记录的时候自动产生。
该编号不允许为空,为该表的主键和索引字段,保持唯一性。
电脑名即商品名称,不允许为空。
售价即商品价格,不允许为空。
销量即商品数量,不允许为空。
数据库实现
图数据库关系图
SQL语句实现
数据表的创建:
(1)用户登录表创建:
createtableadmin(
用户名varchar(20)notnullprimarykey,
密码varchar(20)notnull,
);
(2)电脑商品表创建:
createtablecomputer(
电脑号varchar(20)primarykey,
电脑名varchar(30)notnull,
售价varchar(50),
销量int
);
(3)员工表创建:
createtablestaff(
员工号varchar(20)notnullprimarykey,
员工名varchar(10)notnullunique,
性别varchar(4),
年龄int,
工资varchar(50),
);
(4)店面表创建:
createtableCshop(
店号varchar(20),
店名varchar(10)notnull,
地址varchar(50),
存储过程创建:
(1)“查询电脑信息存储过程”创建:
USE[computersales]
GO
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
ALTERprocedure[dbo].[getcomputer]
AS
select*fromcomputer
(2)“电脑信息插入存储过程”创建:
USE[computersales]
GO
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
ALTERproc[dbo].[NewRecord]
@电脑号varchar(20),
@电脑名varchar(30),
@售价varchar(50),
@销量int
as
insertintocomputervalues(@电脑号,@电脑名,@售价,@销量)
(3)“更行电脑信息存储过程”创建:
USE[computersales]
GO
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
ALTERprocedure[dbo].[updatecomputer]
@电脑号varchar(20),
@电脑名varchar(30),
@售价varchar(50),
@销量int
AS
Updatecomputer
set电脑名=@电脑名,
售价=@售价,
销量=@销量
where电脑号=@电脑号
第4章系统实现
用户登录界面
用户登陆界面如图所示。
图系统登录界面
主要功能界面
主界面如图所示。
图主界面
电脑信息界面
电脑信息查询界面如图所示。
图电脑信息查询界面
图修改电脑信息界面
图更新数据界面
图添加电脑信息界面
图添加信息界面
图删除信息界面
员工信息界面
员工信息界面如图所示。
图员工信息界面
店面信息界面
店面信息界面如图所示。
图店面信息界面
其他界面
其他界面如图所示。
图其他界面
第5章课设总结
两周的课程设计即将结束,在老师的指导和自己的努力下我的毕业设计也完成了。
电脑销售管理系统的功能已经基本实现,在设计过程中,老师指引我们将理论知识与实践想结合起来,从可行性研究、需求分析、总体设计到详细设计,到编码实现,这其中遇到无数问题,有的是设计上的,有的是技术实现上的,在解决这些问题的过程中,我深深的领悟到了软件开发的奥妙,也使我对软件开发有了浓厚的兴趣。
从开始开发校园社交网络,我就遇到了很多很棘手的问题,比如数据库的选择,以及各种新知识的学习。
这也使我锻炼了快速学习的能力,例如当时了解到对于一个社交性质的网站来说,数据的增长和变化都是巨大的,虽然最后还是选择了关系型数据库SQLServer,但是其中的乐趣却是他人不能体会的。
开发设计的初级阶段,我对电脑销售管理方面的知识了解的并不多,通过外出考察和查阅相关书籍,我对电脑销售管理软件的开发有了初步的认识。
随着设计的深入,逐步加深对该系统的认识和对编程语言的熟悉和理解。
同时,我也阅读大量的资料了解现在应用中的电脑销售的一些特点。
课程设计是对所学知识的应用,理论联系实际让我对学过的知识有了更加深刻的理解。
通过程序的编写、调试、修改、维护的过程,不但掌握了编程语言,也掌握了相关数据库的基本操作。
通过这段时间里的学习,我了解到了很多知识,也对软件开发的过程有了一个更深的了解,并且对程序的基本设计思路有了较深的认识,学会并掌握了前台软件界面与后台数据库的连接方法,加深了对数据库使用的熟练程度,对SQL编程语言的用法以及编码规范有了更深的认识,对数据库的设计方法也照以前有了很大改进。
参考文献
[1]?
王珊,萨师煊.数据库系统概论(第五版)[M]北京:
高等教育出版社.
[2]?
王雨竹,张玉花,张星等.SQL?
Sever?
2008数据库管理与开发教程(第2版)[M].北京:
人民邮电出版社,2012.
[3]?
鄂旭,吴昊.C#?
Windows程序设计及应用[M].北京:
清华大学出版社,2013.
[4]?
罗福强,白忠建,杨剑.Visual?
C#.NET程序设计教程[M].北京:
人民邮电出版社,2009.
[5]?
薛华成.管理信息系统[M].北京:
清华大学出版社,2007.
[6]?
马秀麟.管理信息系统及其开发技术[M].?
北京:
清华大学出版社,2006.
附录
部分主要代码
由于篇幅有限,所以只附上主要功能的代码:
1、登陆界面与主功能界面:
usingSystem;
using;
using;
using;
using;
using;
namespace电脑销售管理系统
{
publicpartialclassFormAdmin:
Form
{
publicFormAdmin()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if==""||=="")
{("请输入用户名和密码");}
else
{
stringstr=
"server=localhost;database=computersales;integratedsecurity=true";
SqlConnectionconn=newSqlConnection(str);
();
stringsql=("selectcount(*)fromadminwhere用户名='{0}'and密码
SqlCommandcmd=newSqlCommand(sql,conn);
intcount=(int)();
();
if(count==1)
{
FormMainfrm=newFormMain();
();
();ells["电脑号"].();
intaid=(id);
stringsqlcon="server=localhost;database=computersales;integratedsecurity=true";
SqlConnectionconn=newSqlConnection(sqlcon);
();
stringsql="deletefromcomputerwhere电脑号="+aid;
SqlCommandoda=newSqlCommand(sql,conn);
();
();
Formdelete_Load(sender,e);
}
}
}
}
2、向数据库添加商品信息:
usingSystem;
using;
using;
using;
using;
using;
namespace电脑销售管理系统
{
publicpartialclassFormadd1:
Form
{
publicFormadd1()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
stringstr="server=localhost;database=computersales;integratedsecurity=true";
SqlConnectionconn=newSqlConnection(str);
();
SqlCommandcmd=newSqlCommand("NewRecord",conn);
=;
SqlParameterp1=newSqlParameter("@电脑号",;
SqlParameterp2=newSqlParameter("@电脑名",;
SqlParameterp3=newSqlParameter("@售价",;
SqlParameterp4=newSqlParameter("@销量",;
();
();
();
}
}
}
3、数据库修改商品信息:
usingSystem;
using;
using;
using;
using;
using;
namespace电脑销售管理系统
{
publicpartialclassFormupdata1:
Form
{
stringid,name,price,numb;
publicFormupdata1(DataGridViewRowrecord)
{
InitializeComponent();
id=["电脑号"].();
name=["电脑名"].();
price=["售价"].();
numb=["销量"].();
//-------
=id;
=name;
=price;
=numb;
}
privatevoidFormupdata1_Load(objectsender,EventArgse)
{
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
stringstr=
"server=localhost;database=computersales;integratedsecurity=true";
SqlConnectionconn=newSqlConnection(str);
();
//-------访问数据库------
stringsql="updatecomputerset电脑名='"+
+"',售价='"+
+"',销量="+
+"where电脑号='"++"'";
SqlCommandcmd=newSqlCommand(sql,conn);
();
();
();
}
}
}