版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库设计与应用目录摘要1第一章 需求分析31.1项目背景31.2可行性分析31.2.1技术的可行性31.2.2经济可行性41.3功能需求分析41.4开发环境软件需求4第二章 系统设计52.1系统功能模块图52.1.1前台52.1.2后台52.2系统活动图62.2.1管理员活动图62.2.2会员活动图72.2.3一般用户活动图。8第三章 数据库设计93.1e-r图模型9第四章 系统详细实现11数据库表设计11信息表11操作页面表13第五章 系统测试21小结23致谢25参考文献27附录29摘要在internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们学习、工作、
2、生活等各个方面发挥着重要的作用。因此网站建设在internet应用上的地位显而易见,它已成为政府、企业单位信息化建设中的重要部分,从未倍受人们的重视。本文详细介绍了宠物网站的功能和结构,并论证了网站的设计方案,简要介绍了使用的开发工具microsoft visual studio 2008以及涉及到的相关技术,并以在线文章发布子系统开发的顺序详细介绍了系统分析,系统设计,系统实施的开发过程,然后,展示了子系统所实现的功能及部分界面在介绍某些关键技术的同时,还给出了关键源程序代码,最后对本系统的不足和本小组在开法中的认识和感想进行了总结。当今网络所显现的超长信息、无时空局限、传递快捷、操作灵活等
3、有点吸引着越来越多网民,同时随着经济的发展,人民生活节奏也越来越快,所以网上购物吸引了越来越多的人。宠物网正是为了满足这种需求而研发的中小型电子商务系统。爱心宠物网系统是基于b/s模式的小心电子商务系统,能满足中小型宠物商店的网上销售宠物用品的需求。搭建宠物网极为简单只需要一台pc机,一根网线,即可进行网上交易。宠物网基本上,满足了中小型宠物商店的网上销售需求,其主要功能包括宠物展示、宠物用品展示、会员管理、订单查询宠物管理、用户管理宠物展示主要实现宠物的分类、品种、价格产地等查询;会员管理为每一位注册用户提供了注册、登陆;后台的宠物管理是为管理员提供修改、添加、删除、查询宠物信息的功能;爱心
4、宠物网的设计充分考虑了用户的视觉感受,努力做到界面简单明了,功能相对完善。后台开发充分考虑了使用软件的用户可能对计算机软件并不是很了解,所以在设计的过程中添加了许多必要的提示和说明。总之安心宠物网将以.net技术为基础,实现宠物信息的发布、购买、用户管理、宠物后台管理等一系列的功能,力争成为广大客户带来更的便利,为爱心宠物带来更高的销售额。关键词:互联网;数据库;宠物网站第一章 需求分析1.1项目背景宠物正在成为不少家庭里的新成员。随着养宠物的家庭不断增多,宠物经济也越来越受人关注。目前从养宠物的数量和消费能力上看,北京、上海、广州、重庆和武汉已经成为我国五大“宠物城市”,在这些城市。而天津、
5、南京、杭州、深圳、成都等城市,宠物普及程度也相当高。不少业内人士表示,随着日前颁布的宠物条例中免去每年宠物年检费用的政策出台后,可能会有更多人加入养宠物的行列,中国宠物市场的潜力仍待挖掘。如此大的市场自然吸引了众商家的眼球,围绕“宠物赚钱”(指宠物交易本身)和“赚宠物的钱”这两个主题,市场可提供的项目越来越多,为宠物衣食住行、生老病死支出的费用也在逐年增加,个别已经面临服务升级的项目收费更是高得惊人。由于饲养宠物是一个循环消费的过程,消费者需要不停地支出,因此宠物产业成为投资者非常看中的热点行业。有关专家表示,我国目前至少有宠物1亿只(条),围绕宠物发生的消费至少在150亿元以上。同时,“宠物
6、热”还带动了宠物经济,围绕宠物服务和宠物用品大做文章的人成倍增加,从宠物食品、宠物医疗,到宠物美容,甚至还出现了宠物婚介、殡葬、寄养、宠物spa、宠物旅游团等新兴服务。然而,由于行业缺乏监管和规范,“暴利”、欺诈现象严重,在宠物消费中,食品占据最大份额,其次是医疗和宠物用品,许多投资者甚至认定生产和经营宠物用品只赚不赔,纷纷抢食。宠物行业除了收费充满暴利外,由于越来越多的投资者加入到快速增长的宠物市场,又缺乏有效的监管和规范,使整个市场陷入无序混乱的状态。1.2可行性分析1.2.1技术的可行性爱心宠物网系统采用了当前的主流计算结构b/s模式进行开发,前台开发工具选用microsoft visu
7、al studio 2008。它是一种可视化的、面向对象的windows开发语言,具有易用、通用和开发效率高的特点。后台的数据库开发工具选用了microsoft sql server 2008,它能够处理大量数据,同时保持数据完整性并提供许多高级管理和数据分配功能,它又在数据库平台的安全模块方面做了重要的增强,在加强数据安全性方面提供了更多精确、灵活的控制方法,并定义了帮助建立支持安全计算的必要步骤,同时帮助部署和维护一个安全环境。这两种开发工具功能强大,有较好的接口,作为本系统开发工具是可行的。1.2.2经济可行性随着计算机技术的飞速发展,计算机在企业管理中应用的普及,实现了企业业务管理的高
8、效化、系统化、规范化、自动化。传统的经营模式已无法适合当今的庞大的数据处理和精确的运算需求。所以一套精美完善的宠物网系统是提高工作效率节省人力物力财力的有效解决方案。拥有自己的一套特色的宠物网站系统是非常必要的。它可持续使用并能随着时代和工作的需求不断更新,一期投入终身受用,按长期的使用计算,开发系统的造价平均到每年与传统式的管理方式的年耗资本相对比,性价比是可行的。开发这套系统的经济可行性是很高的。1.3功能需求分析根据调查,宠物网站管理主要包括网站的浏览者、会员、网站管理人员三个方面。宠物浏览者的需求是查询该网站的宠物和宠物商品信息,想要购买所需的东西,则需要注册登录,成为会员;会员的需求
9、是查询该网站的宠物和宠物商品以及购买所需物品,因此我们的网站分为前台后台两个方面进行设计的,前台主要是产品的展示,供浏览者和会员查看和购买商品,而后台主要是管理员登陆的,管理员要从后台维护网站的所有信息,包括会员管理,宠物管理,宠物用品管理,等等。前台需要实现的主要功能有:1宠物及相关用品信息的浏览,明星宠物,热销用品的展示及详细信息浏览。2宠物用品的购买包括对购物信息的修改,订单信息的填写及提交。3普通用户和会员注册,登录。后台系统管理员对数据的处理及维护:1系统设置对数据库备份与还原,操作日志的查看,管理员信息的查询,详细信息查看,新增管理员,删除不用的管理员信息,对管理员密码的修改。2基
10、本资料管理对该项目中进行查询(包括模糊查询),添加,修改,删除及导出数据等操作3销售管理宠物销售管理,记录宠物的销售情况,对销售记录进行添加,修改,删除等操作。宠物用品销售管理,记录用品的销售情况,对其销售记录进行添加,修改,删除等操作。1.4开发环境软件需求操作系统: windows 7。数据库:sql server 2008。开发工具:microsoft visual studio 2008第二章 系统设计2.1系统功能模块图根据上述系统功能的需求分析,按照结构化程序设计的需求,得到如下的系统模块图。2.1.1前台主要分为会员管理,商品展示,购买流程,三大功能模块。如图3-1所示。其中会员
11、管理模块包括了会员登录、会员注册、等功能。商品展示主要是对宠物及宠物用品进行展示,分类展示及详细介绍。购买流程主要针对会员购买商品时所进行的一系列的操作。包括宠物用品的详细介绍及选购,填写订单并提交。图表 21信息管理2.1.2后台主要分为基本信息管理,销售管理,库存管理三大功能模块,如图3-2所示。其中基本信息管理模块主要包括会员的基本信息模块。销售管理模块主要包括对订单的管理,宠物销售记录的管理和宠物用品销售记录的管理。库存管理模块主要包括宠物信息的管理和宠物用品信息的管理。2.2系统活动图2.2.1管理员活动图如图2-2所示进入系统管理宠物信息管理用户信息管理员信息退出系统图表 22 管
12、理活动图2.2.2会员活动图进入系统购买宠物填写详细信息查看网站退出系统查看打折信息图2-3所示。图表 23会员活动图2.2.3一般用户活动图。如图3-4所示进入系统购买宠物填写详细信息查看网站退出系统图表 24一般用户活动图第三章 数据库设计数据库的设计经过我们的分析,将系统中涉及的功能表现出来,其中表的建立尤为重要。数据库表的建立不仅是字段的建立,表与表之间的关系也不可或缺。主键、外键的关系需要谨慎建立。创建外键关系即是将各表与表之间联系起来。表与表之间一旦脱离了外键之间的关系而独立,那么系统之间的功能也将难以完成。3.1e-r图模型e-r图简洁的反映出整个流程的概况和系统中所有实体之间相
13、对应的关系,综合了管理员、员工、会员、一般用户在整个系统中的联系和各自的安排把系统的内部联系明了化。图3-1 e-r模型图第四章 系统详细实现数据库表设计经过分析,系统中建立了数据库petdata,如图5-1所示。图4-1 petdata数据库信息表表格 4 1 信息表表名(中文)会员表表名(英文)customer info序号说明列名数据类型长度小数位标识主键允许空默认值1会员编号cusidint40是是否2用户名cusnamenvarchar500否3密码cuspwdnvarchar500否4性别cussexnvarchar500是5邮箱emailnvarchar500是6电话telnva
14、rchar500否7qqqqnvarchar500是8地址cusaddressnvarchar500否表格 4 2 宠物信息表表名(中文)宠物信息表表名(英文)petinfo序号说明列名数据类型长度小数位标识主键允许空默认值1ididint40是是否2宠物编号petidnvarchar500是3类型typenvarchar500是4品种varietynvarchar00是5原产地source_areanvarchar00是6详细介绍deta_introducenvarchar00是7库存量stocknvarchar500是8照片petimagenvarchar500是9备注remarknvar
15、char500是表格43 订单表表名(中文)订单表表名(英文)orderinfo序号说明列名数据类型长度小数位标识主键允许空默认值1订单编号orderidint40是是否2商品编号goodsnamenvarchar500是3会员名称cusnamenvarchar500是4订购金额pricenvarchar500是5订购数量totlecountnvarchar500是6订购时间ordertimenvarchar500是7手机号mobilenvarchar500是8收货地址consiadressnvarchar2000是图 42登陆错误界面图 43 登陆成功界面操作页面表 代码在附录后面图44 主
16、页面图 45 宠物购买页面图 46 填写个人资料图 47 输入信息不完整界面图 48 购买成功页面图 49 新品上市页面图 410 售后服务页面图 411 管理员页面图 412 增加信息页面图 413 增加信息不完整图 414 输入的宠物id已存在图 415 删除页面图 416 查找为空图 417修改信息成功图 418 退出系统第五章 系统测试 系统在完成后,经过测试,有许多需要改进的地方,我们也都一一解决。1物信息页面,在添加数据并保存后不能够自动返回到宠物信息界面,后来经过改正已实现该功能并且能同时刷新宠物信息。2订单发货时,只能对单一订单发货,后来又多加一个多单发货的功能,并且实现了发货
17、之后不能再发货的功能。小结至此,爱心宠物网系统设计与实现已经顺利完成。我主要负责后台的设计与实现及前台的购物流程。在几天的试运行的过程中,发现连接数据库时一度出现过错误,经过调试改正后,错误点全部清除,此系统可以按着设计思想和需求功能正常运行。由于当今的宠物店各具特色,经营范围也各有千秋,要求也不尽相同,所以本系统仅考虑到爱心宠物公司所需要的业务活动及管理的基本和主要的几项功能,一个完好的宠物网系统还需要更多更复杂的功能要求。由于开发周期短和开发人员水平有限等局限性,不能将本套系统尽善尽美。希望在以后能够对宠物网,做更深一步的调研,在原由系统的基础上不断添加新功能。最终能够开发出一套完善的爱心
18、宠物网系统。本系统在开发过程中,在固定的业务管理要求的模式下还添加了一些人性化的,个人的构思和创意。本套爱心宠物网系统符合基本需求功能,易于操作,应该可以满足宠物公司的基本需求,存在要改进的地方在以后会进一步完善。希望本系统能够给用户带来方便。致谢感谢戚老师这学期带领我们学习数据库概论,并教会我们如何使用microsoft visual studio 2008以及sql 2008两种程序开发平台,增强了我们的编程能力,锻炼了我们的动手能力,使我们对数据库和c#的知识有了更加深刻的理解。在本次程序设计中戚老师与我们做了深刻的沟通,对编程中可能出现的一些问题作了详细的讲解,此外,在学习上经常激励我
19、们学好每一门课,在生活上关心我们,教我们为人处世之道。通过该项目的编写,使我们懂得了学以致用的重要性,并且能够把所学的知识应有到编程中,遇到不懂的地方通过请教老师,和同学互相商量共同学习,虚心请教同学,互帮互助,使我认识到团结的重要性,增加了团队精神、协作精神,将终身受益。其中汪雨生、孙君伟同学对我们的小组帮助最大,在此表示真诚的感谢!在课程设计即将完成之际,回顾紧张但又充实的程序设计开发过程,本小组在此向所有关心我的及帮助我的老师和同学们致以最真诚的感谢。参考文献1刘甫迎,王蓉:c#程序设计教程m,北京,电子工业出版社.2戚晓明:数据库技术与应用sql server清华大学出版社,2010.
20、3贾洪峰:ado.net2.0技术内幕m,北京,清华大学出版社出版社.4周绪:sql server2000中文版入门提高m,北京,清华大学出版社.5萨师煊,王珊:数据库系统概论m,北京,高等教育出版社.6郑人杰:软件工程m,北京,清华大学出版社.7吉林省宠物网()8百度()附录daousing system;using system.collections.generic;using system.text;using system.data.sqlclient;using system.data;namespace
21、dataaccesslayer public class dao private sqlhelper sqlhelper = null; public dao() sqlhelper = new sqlhelper(); /增 public void add(string petid, string petname, string petaddress, string petweight, string petprice) string sql = insert into 宠物表 values(petid,petname,petaddress,petweight,petprice); sqlp
22、arameter para = new sqlparameter new sqlparameter(petid,sqldbtype.nchar), new sqlparameter(petname,sqldbtype.nvarchar), new sqlparameter(petaddress,sqldbtype.nchar), new sqlparameter(petweight,sqldbtype.nchar), new sqlparameter(petprice,sqldbtype.nchar) ; int i = 0; parai+.value = petid; parai+.valu
23、e = petname; parai+.value = petaddress; parai+.value = petweight; parai+.value = petprice; sqlhelper.executenonquery(sql, para); /删除 public void deletebypetid(string petid) string sql = delete from 宠物表 where 宠物id=petid; sqlparameter para = new sqlparameter new sqlparameter(petid,sqldbtype.nchar) ; i
24、nt i = 0; parai+.value = petid; sqlhelper.executenonquery(sql, para); public void deletebyname(string petname) string sql = delete from 宠物表 where 名称=petname; sqlparameter para = new sqlparameter new sqlparameter(petname,sqldbtype.nvarchar) ; int i = 0; parai+.value = petname; sqlhelper.executenonque
25、ry(sql, para); /查找 public datatable searchbypetid(string petid) datatable table = new datatable(); string sql = select * from 宠物表 where 宠物id=petid; sqlparameter para = new sqlparameter new sqlparameter(petid,sqldbtype.nchar) ; int i = 0; parai+.value = petid; table = sqlhelper.createtablebysno(sql,
26、para); return table; public datatable searchbypetname(string petname) datatable table = new datatable(); string sql = select * from 宠物表 where 名称=petname; sqlparameter para = new sqlparameter new sqlparameter(petname,sqldbtype.nchar) ; int i = 0; parai+.value = petname; table = sqlhelper.createtableb
27、ysno(sql, para); return table; /修改 public void update(int petid, string petname, string petaddress, string petweight, string petprice) string sql = update 宠物表 set 名称=petname,产地=petaddress,体重=petweight,价格=petprice where 宠物id=petid; sqlparameter para = new sqlparameter new sqlparameter(petid,sqldbtype
28、.int), new sqlparameter(petname,sqldbtype.nvarchar), new sqlparameter(petaddress,sqldbtype.nvarchar), new sqlparameter(petweight,sqldbtype.nvarchar), new sqlparameter(petprice,sqldbtype.nvarchar) ; int i = 0; parai+.value = petid; parai+.value = petname; parai+.value = petaddress; parai+.value = pet
29、weight; parai+.value = petprice; sqlhelper.executenonquery(sql, para); sqlhelperusing system;using system.collections.generic;using system.linq;using system.text;using system.data.sqlclient;using system.data;namespace dataaccesslayer public class sqlhelper public void executenonquery(string sql, par
30、ams sqlparameter para) string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); using (sqlcommand cmd = new sqlcommand(sql, conn) cmd.parameters.addrange(para); cmd.executenonquery(); public datatable createtable()
31、 datatable table = new datatable(); string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); string sql = select * from 用户表; using (sqldataadapter adapter = new sqldataadapter(sql, conn) adapter.fill(table); return
32、 table; public datatable createtable1() datatable table = new datatable(); string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); string sql = select * from 宠物表; using (sqldataadapter adapter = new sqldataadapter
33、(sql, conn) adapter.fill(table); return table; public datatable createtablebysno(string sql, params sqlparameter para) datatable table = new datatable(); string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); usi
34、ng (sqlcommand cmd = conn.createcommand() cmd.commandtext = sql; cmd.parameters.addrange(para); using (sqldataadapter adapter = new sqldataadapter(cmd) adapter.fill(table); return table; public datatable createtablebysname(string sql, params sqlparameter para) datatable table = new datatable(); stri
35、ng connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); using (sqlcommand cmd = conn.createcommand() cmd.commandtext = sql; cmd.parameters.addrange(para); using (sqldataadapter adapter = new sqldataadapter(cmd) adapte
36、r.fill(table); return table; public int login(string uname, string pwd, string usort) string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); using (sqlcommand cmd = conn.createcommand() cmd.commandtext = select c
37、ount(*)from 用户表 where 用户名= + uname + and 密码= + pwd + and 用户类型= + usort + ; cmd.parameters.add(new sqlparameter(username, uname); cmd.parameters.add(new sqlparameter(password, pwd); cmd.parameters.add(new sqlparameter(usersort, usort); int total = convert.toint32(cmd.executescalar(); return total; pu
38、blic int delete(string petid) string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); using (sqlcommand cmd = conn.createcommand() cmd.commandtext = select count(*)from 宠物表 where 宠物id= + petid + ; cmd.parameters.a
39、dd(new sqlparameter(petid, petid); int total = convert.toint32(cmd.executescalar(); return total; public int del(string name) string connstr = server=(local);database=petshop;integrated security=sspi; using (sqlconnection conn = new sqlconnection(connstr) conn.open(); using (sqlcommand cmd = conn.cr
40、eatecommand() cmd.commandtext = select count(*)from 宠物表 where 名称=+name+ ; cmd.parameters.add(new sqlparameter(name, name); int total = convert.toint32(cmd.executescalar(); return total; 增加信息using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawi
41、ng;using system.linq;using system.text;using dataaccesslayer;using system.windows.forms;namespace 宠物商店 public partial class form10 : form public form10() initializecomponent(); private void button2_click(object sender, eventargs e) form9 add = new form9(); add.show(); this.hide(); private void button1_click(object sender, eventargs e) sqlhelper helper = new sqlhelper(); int total = helper.delete(petid.text.tr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业短期借款合同续签
- 2024年度汽车交易与保险合同3篇
- 柑橘销售合同样本范本
- 零息借款合同书模板
- 2024年度医疗设备采购、安装及技术支持合同2篇
- 点心供应合同
- 合同履行保函
- 商业综合体安全保卫服务合同模板
- 药材供应链合同
- 农村土地购房协议
- 思想道德与法治课件:第六章 第三节 维护宪法权威
- 学院 宿舍楼安全现状评价报告
- 六年级上册英语教案 Module 9 Unit 2 I want to go to Shanghai. 外研版(三起)
- GB∕T 7739.1-2019 金精矿化学分析方法 第1部分:金量和银量的测定
- DB63∕T 1841-2020 青海省农牧民住房抗震技术规程
- 报废统计表(标准模版)
- 药品批发企业实施GSP情况内审办法
- 田英章《千字文》毛笔字帖
- 《爱的抱抱》 PPTX 课件
- 全麻下患者术中知晓的临床分析
- 燃气公司门站投产试运行方案
评论
0/150
提交评论