《网上图书销售系统.pdf》由会员分享,可在线阅读,更多相关《网上图书销售系统.pdf(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 网络数据库课程设计 报 告 书 题 目:网上图书销售管理系统 班 级:商务 15-1 学 号:15 姓 名:王浩 指导教师:张芳 日 期:摘要 伴随着第四次工业技术革命的到来,人们开始进入新的时代互联网时代,而其中电子商务迅速的发展,这将改变人们的购物方式及习惯。网上书店是伴随着计算机技术和网络技术的发展而出现的一种新型的图书销售渠道。网上书店是依靠计算机网络,以通讯技术为基础,实现图书销售的网上交易。网上书店同传统的店面书店相比,网上书店的经营方式和销售渠道是全新的;它 24 小时的全天候和全方位服务是传统书店所不能比及的,成本低廉更是开设网上书店的主要原因。而与其他商品相比,书籍运送几乎
2、不怕碰撞碎裂,不具时效性,同时书本具有功能单一,形式简单,易于判断和选择而独具优势,最适合于网上交易;再次是单价低,降低了消费者第一次在网络购物的门槛,所以网上书店成了电子商务的先锋。关键词 电子商务;网上书店 Abstracts The new time which was called internet age is entering into our life with the advent of the second industrial revolution.The global e-commerce which will change how people used to purc
3、hase has got rapid development.Online bookstore is new bookstore mode with developing of network technique,which is based on the computer network and communicate technology to complete the sales.Compared with traditional storefront bookstore,online bookstore management and sales channels is new,whos
4、e 24 hours all-weather and all-round service is beyond reach by traditional storefront bookstore.The low cost is the main reason for the creation of online bookstore.Compared with other commodities,almost no books of collisions fragmentation,without limitation,as a function of a single book,a simple
5、 form,easy to judge and choose the unique advantages,the most suitable for online transactions.Then,low prices reduce the threshold for consumers in the first online shopping.So,online bookstore has become a pioneer in e-commerce Key word e-commerce;online bookstore 目录 摘要.2 目录.3 第一章 绪论.4 引言.4 概述.4 第
6、二章 可行性分析及设计目标.5 可行性分析.5 设计目标 .5 第三章 要解决的几个关键问题.6 需要解决的难题.6 第四章 系统结构与模型.7 系统流程图 .7 数据库设计 .7 数据库创建代码.9 第五章 系统设计 .10 界面设计 .10 设计代码.14 第六章 性能测试与分析.14 测试概要.14 测试结果及发现.15 性能分析 .20 第七章 结束语.20 致谢 .20 参考文献.21 附件一.21 附件二.23 第一章 绪论 引言 其实最早的电子商务体验其实是从网上售书开始的,从最早的亚马逊到今天的当当网,网上书店经历了 20 多年的发展,越来越多的企业开始设计和建造属于自己的网站
7、。“品种丰富、选购方便、提供折扣”这三个特点让网上书店拥有天然经营优势,它能够吸引大批消费者的魅力正是因为品种丰富能满足读者的多方面需求,由于不受实物陈列空间的限制,网上书店向读者提供的选书品种往往能数十倍于实物书店,读者可以通过分类查找方式选择自己所需购买的图书。传统的书店无法满足人们的需求,现代的人们追求更加自由和方便的购物方式,企业也要建立功能完善的电子商务服务的动态商务网站,而本文将要介绍的系统,就是这些大型网站的微小型和简单版。概述 SQL Server 2008 和 Visual Studio 2010 作为最基本的数据库系统和程序设计软件,借助这两种工具,设计一个能储存、修改和管
8、理有关网上书店的数据系统,基本可以实现对相关数据的整合。我想要设计也就正是一个电子商务系统的开发-网上图书销售系统。第二章 系统分析 可行性分析 商业企业在运营过程中,经常会受到以下一些条件的限制:产品的宣传受到限制,采购商或顾客只能通过上门咨询、电话沟通等方式进行 各种信息的获取,受一定的时间与物理空间的局限并且成本较高;庞大的商业经济周转;复杂的产品周转渠道;从看样品、谈价格到支付货款等一系列的产品周转渠道过于复杂,企业与顾客之间缺乏全面的沟通与快捷运营的平台。商业企业中根据季节的变化,热销商品在销售高峰到来时货源紧张,企业需要实时了解商品的销售情况,保证热销商品的要货满足率。因此,企业需
9、要重新认识市场、消费者以及自身市场定位,正确认识电子商务技术在企业中的重要地位,以少量的时间和资金建立企业信息门户网站并架设一定范围的商务网络,以此来制定长远发展战略,使企业与顾客间的经济活动变得更灵活、更主动。所以这才有了网上图书商店的诞生。设计目标 设计的程序可以满足用户和管理员的基本需求。用户通过账号和密码登录后可以查看所有的图书的详情,如果是新用户可以先注册一个账号再登录,选好图书后确认订购,就会有订单生成。管理员登录之后,就可以对订单进行查看和处理,当然也可以对图书进行管理。总结下就是:统一友好的操作界面,能保证系统的易用性。规范、完善的基础信息设置。图书分类详尽,可按不同类别查看商
10、品信息。对新用户开放,注册方便。实现网上购书。第三章 要解决的几个关键问题 需要解决的难题 1.登录界面中账号注册的设计,将用户输入的账号提取出来并不难,但是并不能随便输入账号,因为账号是唯一的,一个用户对应一个账号,这就要求要将新用户注册的账号进行拿到 SQL 里去检验是否与其他已注册用户的账号重复,再将检测结果返回到窗口,然后才能继续注册。2.管理员登录后对图书进行管理,通过图形界面的方式直接修改和保存,而不是通过代码的方式。第四章 系统结构与模型 系统流程图 数据库设计 用户名 密码 网上图书销售系统 账号注册 用户登录 管理员登录 购买图书 图书管理 订单管理 构建关系模型:用户(用户
11、名,密码,收货地址,手机号,用户编号)图书(图书编号,价格,作者,出版社,图书名称)订单表(用户编号,图书编号,数量,订单日期,订单号)用户管理(管理员 ID,登录密码)图书管理(图书编号,图书种类,库存量)插入数据:用户管理 管理员 ID 登录密码 图书管理 图书编号 图书种类 用户 收货地址 手机号 用户编号 图书 图书编号 出版社 图书名称 库存量 价格 作者 订单表 用户编号 订单号 订单日期 图书编号 数量 E-R 图 用户 0001 好男孩 123456 北京江湖大道110 号 0002 曾经的你 234567 上海虹桥路110 号 0003 怪盗基德 345678 武汉户部巷91
12、1 号 0004 凉风有信 456789 长沙老九门119 号 0005 银尘 567890 广州黄埔大道120 号 图书 A001 167 余华 北京大学出版社 活着 B001 148 加西亚马尔克斯 上海商务印书馆 百年孤独 C001 145 郭敬明 长江文艺出版社 爵迹 D001 149 安东尼 长江文艺出版社 这些 都是我给你的爱 订单表 A0501 0001 A001 1 A0502 0005 A001 1 A0701 0004 B001 2 A0801 0002 D001 1 A0110 0003 D001 1 用户管理 4399 666666 7K7K 555555 图书管理 A
13、001 43 现实主义小说 B001 34 魔幻现实主义小说 C001 34 玄幻小说 D001 43 绘本 数据库创建代码 见附件一 第五章 系统设计 界面设计 初始界面:用户登录界面 用户购书界面 管理员登录界面 管理图书界面 订单管理界面 账号注册界面 设计代码 见附件二 第六章 性能测试与分析 测试概要 测试表 序号 功能模块名称 是否测试 是否通过 测试日期 1 用户系统 账号注册 用户登录 查看图书 购买图书 2 管理员系统 管理员登录 查看图书 修改图书信息 查看订单 修改订单信息 功能测试基本通过,图书销售管理的功能基本完善,有的模块做的不是很精细,但是总的效果还是好的。在测试
14、的过程中,有发现部分错误,但已经更改,测试之后的图书馆管理系统比较完善和安全了。有部分的界面还不是很友好,有待提高。测试结果及发现 用户模块 把本项测试中实际得到的动态输出(包括内部生成数据输出)结果同对于动态输出的要求进行比较,陈述其中的各项发现。管理员模块 把本项测试中实际得到的动态输出(包括内部生成数据输出)结果同对于动态输出的要求进行比较,陈述其中的各项发现。性能分析 用户模块 基本实现了预期的目标,账号注册、用户登录、查询图书和购买图书功能基本完善,账号注册不会出现相同账号的情况,用户可以根据图书种类来查询图书。缺陷和不足的一是没有购物车系统,用户只能当即购买;二是没有修改密码的模块
15、。管理员模块 基本实现了预期的目标,管理员登录、查询图书、修改图书、查询订单和修改订单的功能基本完善,管理员可以对图书和订单进行修改并保存。缺陷和不足的一是没有管理员的注册系统,只能在后台进行管理;二是修改图书并没有包括图书种类这个属性,虽然通过在 sql中添加一个触发器可以解决这个问题;三是修改订单中并没有包括收货地址这个属性,因为没有在数据库中提取并再添加到订单表的能力,但是同样的可以在 sql 添加触发器来解决。第七章 结束语 做完整个课程设计报告用了大概一周的时间吧,其中有些部分时间是花在了创建数据库和添加数据的过程中,大部分时间都是在修复窗体创建中出现的 bug。以前的时候用别人软件
16、觉得很方便,直到自己去做才觉得非常的需要耐心和仔细,很多不注意的地方一不小心代码就运行不下去了。万事开头难,慢慢的克服了一些困难之后开始变得熟练起来,但是这个时候也结束了。虽然只是模拟,但是却要尽量的去想象你自己正在开一家网店,去描绘里面的一些细节从管理到销售。做 E-R 图的时候做到一半不小心全弄丢了,按 ctrl+z 也找不回来,虽然很恼怒但是还是重新做,最后一个人做完之后还是有些成就感的,不能说尽善尽美,因为很多改用 int 型的没有考虑到后面都用了 char 型,结果后面一直要转换很麻烦。但是也可以是说用心去做了,也算是没有虚度了。致谢 在这次课程设计实践环节中,首先感谢我所在小组的指
17、导老师张芳老师对我们的认真负责,在实践中给我们提供了很多宝贵的意见,这对于我们以后的工作和学习都是很大的激励。同时还要感谢马江平老师提供给我的参考文件和代码,这对我是很大的帮助,让我少走了很多弯路。在做网上图书销售系统的过程中,程序调试给我留下了很深的印象,出现 bug 并解决它就是我大部分时间都在做的事情。这也说明了我在平时的学习中学的不够扎实,对错误的研究不够,编写代码也不够仔细,这些都使得程序运行时出现了很多的错误,从而浪费了我很多的精力,吃一堑长一智,在以后的生活和学习中,一定要养成严谨的作风。最后感谢答辩组的全体老师,能够对我进行耐心的批判和指导,也祝老师们身体健康,假期快乐。参考文
18、献 1 王金瑞,数据库系统原理与应用,清华大学出版社,2014:P112-334 2 张跃廷,王小科,C#程序开发范例宝典,中国邮电出版社,2009:P210-321 3 附件一 create database REVENGE CREATE TABLE 用户(用户编号 char(4)primary key,用户名 varchar(20)not null,密码 char(6)not null,收货地址 varchar(50),手机号 char(11)create table 图书 (图书编号 char(4)primary key,价格 int not null,作者 varchar(20),出版
19、社 varchar(20),图书名称 varchar(50)create table 用户管理 (管理员ID char(4)primary key,登录密码 char(6)not null )create table 订单表(订单号 int identity(1,1)primary key,用户编号 char(4)foreign key references 用户(用户编号),图书编号 char(4)foreign key references 图书(图书编号),数量 int,订单日期 datetime )create table 图书管理(图书编号 char(4)foreign key re
20、ferences 图书(图书编号),库存量 int,图书种类 varchar(10)insert into 用户 values(0001,好男孩,123456,北京江湖大道号,)insert into 用户 values(0002,曾经的你,234567,上海虹桥路号,)insert into 用户 values(0003,怪盗基德,345678,武汉户部巷号,)insert into 用户 values(0004,凉风有信,456789,长沙老九门号,)insert into 用户 values(0005,银尘,567890,广州黄埔大道号,)insert into 图书 values(10
21、01,167,余华,北京大学出版社,活着)insert into 图书 values(2001,148,加西亚马尔克斯,上海商务印书馆,百年孤独)insert into 图书 values(3001,145,郭敬明,长江文艺出版社,爵迹)insert into 图书 values(4001,149,安东尼,长江文艺出版社,这些都是我给你的爱)insert into 订单表 values (A0501,0001,A001,167,1,)insert into 订单表 values (0005,A001,167,1,)insert into 订单表 values (0004,B001,296,2,
22、)insert into 订单表 values (0002,D001,149,1,)insert into 订单表 values (0003,D001,149,1,)insert into 用户管理 values (4399,666666)insert into 用户管理 values (7K7K,555555)insert into 图书管理 values(A001,43,现实主义)insert into 图书管理 values(B001,34,魔幻现实)insert into 图书管理 values(C001,34,玄幻小说)insert into 图书管理 values(D001,43,
23、绘本)附件二 using System;using ;using;using;using;using;using WindowsFormsApplication6 public partial class Form1:Form public Form1()InitializeComponent();private void button1_Click(object sender,EventArgs e)Form2 f=new Form2();();private void button2_Click(object sender,EventArgs e)Form4 f=new Form4();(
24、);private void label1_Click(object sender,EventArgs e)private void Form1_Load(object sender,EventArgs e)private void button3_Click(object sender,EventArgs e)Form7 f=new Form7();();private void label1_Click_1(object sender,EventArgs e)using System;using ;using;using ;using;using;using WindowsFormsApp
25、lication6 public partial class Form2:Form public Form2()InitializeComponent();private void button1_Click(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);();书 ”中D。您 可 以根 据Y需要a移动 或删 除y它。this.图 书 .图 书 );private void button1_Click(ob
26、ject sender,EventArgs e)private void button1_Click_1(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);();string dd=;string q=insert 订单 表 values(+dd+,+,+,+);SqlCommand cmd=new SqlCommand(q,conn);();();(订购o成 功|!);private void button
27、2_Click(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);string q=select*from v_sjw where 图 书 编 号=+SqlDataAdapter da=new SqlDataAdapter(q,conn);DataSet ds=new DataSet();(ds,stu);=stu;using System;using ;using;using ;using;using;us
28、ing WindowsFormsApplication6 public partial class Form4:Form public Form4()InitializeComponent();private void label1_Click(object sender,EventArgs e)private void button1_Click(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);();da
29、tabase=REVENGE;uid=sa;pwd=123456);string s=select*from 图 书 ;da=new SqlDataAdapter(s,conn);(ds,st);=st;private void button3_Click(object sender,EventArgs e)Form8 f=new Form8();();using ;using;using ;using;using;using WindowsFormsApplication6 public partial class Form7:Form public Form7()InitializeCom
30、ponent();private void textBox1_TextChanged(object sender,EventArgs e)private void textBox4_TextChanged(object sender,EventArgs e)private void button1_Click(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);();string q=insert into 用
31、 户 values(+,+,+,+,+);SqlCommand cmd=new SqlCommand(q,conn);();();(注 册 成 功|,请点 击 返 回!);private void button2_Click(object sender,EventArgs e)Form1 f=new Form1();();private void button3_Click(object sender,EventArgs e)string a=;string b=;if(a=b)(账号和 密 码相符,请继 续注 册);else (账号和 密 码不相符,请重新输 入,亮 仔 D提 示,;priv
32、ate void textBox2_TextChanged(object sender,EventArgs e)private void button4_Click(object sender,EventArgs e)string c=server=.;database=REVENGE;uid=sa;pwd=123456;SqlConnection conn=new SqlConnection(c);();string z=exec pr_hhh a=+;SqlCommand cmd=new SqlCommand(z,conn);SqlDataReader dr=();while()strin
33、g a=(0);if(a=0002)(账号可 用,请继 续注 册。,亮 仔 D提 示);else (账号不可 用,请重新输 入!,亮 仔 D提 示,;();using System;using ;using;using ;using;using;using WindowsFormsApplication6 public partial class Form8:Form SqlDataAdapter da;DataSet ds=new DataSet();public Form8()InitializeComponent();private void button2_Click(object sender,EventArgs e)SqlCommandBuilder b=new SqlCommandBuilder(da);(ds,st);private void button1_Click(object sender,EventArgs e)SqlConnection conn=new SqlConnection(server=.;database=REVENGE;uid=sa;pwd=123456);string s=select*from 订单 表 ;da=new SqlDataAdapter(s,conn);(ds,st);=st;
限制150内