1、数据库课程设计图书销售管理系统数据库原理课程设计报告 专业: 软 件 工 程 班级: 软件1201、软件1202 学号: *、* 姓名: 向文静、黄鹏 题目名称: 图书销售管理系统 完成日期: 2014年5月25日 计算机学院实验中心引 言随着计算机的普及书店规模的不断扩大,传统的图书销售管理方法,都就是通过人工统计与计算的管理方式进行的。这样的管理方法不但费时费力,也容易产生计算上的错误与疏漏;计算机技术的全面普及,打破了书店管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对图书销售与库存进行管理。通过图书销售管理系统可以解决书店管理中遇
2、到的各种问题,该图书销售管理系统分析了市场需求与实际需要,利用Microsoft Visual Studio 2008连接SQL数据库的方式,实现了书店的图书销售等一系列管理,该系统具有处理图书录入、图书销售及管理、图书查询、报表查询等功能。第一章 系统分析1、1功能需求:本系统就是根据书店的实际需求而开发的,要求稳定、可靠的实现图书销售的自动化管理,通过本系统可以达到以下目标:a、用户管理:对系统所有用户的相关信息进行管理。b、图书管理:对图书信息进行添加以及编辑,对图书基本信息的录入及编辑包括图书类别、图书进价、图书售价、图书出版社、图书折扣、图书作者等。c、图书销售管理:对图书的销售信息
3、进行动态添加并实现对图书库存量的动态修改等,所添加的图书销售信息包括图书的售价、折扣、销售日期。d、查询管理:用户根据实际需要对图书、图书销售、图书库存等信息分类查询。e、报表查询:系统用户可以通过对时间段的选择来查瞧该段时间内图书的销售情况,以便于做出更为合理的销售计划、提高效益。f、数据管理:为了防止系统用户的误操作,用户可以根据自己的需要对图书信息、销售数据等进行备份等操作。1、2待开发软件功能:通过以上的系统目标分析,根据以上系统所要满足的功能,设计出了图书销售管理系统的主要功能模块图,如图1、1所示。 该图书销售管理系统就是根据书店的情况结合实际需求而开发的,完全能够帮助书店实现高效
4、、准确的图书销售自动化管理。2、1 系统主要功能模块设计:结合前面对系统功能的分析,以及Microsoft Visual Studio 2008开发环境的特点,得到如下图所示的系统功能模块图: 图2、1图书销售管理系统主要功能模块图系统各个模块功能分配如下:(1)图书信息模块:对图书的各种信息、类别进行录入、管理;(3)供应商信息模块:对供应商供应的各种图书信息进行录入、管理;(4)客户信息模块:对各种信息进行统计、查询;(5)销售信息模块:对销售完的图书进行统计、查询;2、2 系统处理流程分析:(1)系统启动,选择登录类型并进行身份验证(账户、密码均为a、a)(2)登录成功后,进入系统主界面
5、;(3)系统初始化,导入数据库;(4)登录成功后可以进行相应的功能选择并进行操作;(5)退出系统。2、3系统接口设计:2、3、1外部接口(1) 界面:采用GUI图形用户界面,含菜单、图片控件、Button按钮、文本框等元素。(2) 软件接口:系统运行于JAVA开发环境下。(3) 硬件接口:运行于PC机上。3、1系统数据库分析:通过对图书销售管理系统的功能分析我们已知道,图书销售管理系统具有处理图书录入、图书销售、销售统计、查询库存等功能,通过该系统能够帮助用户迅速准确的对已销售图书与剩余库存图书进行统计与销售数据的汇总工作,以此来提高书店的管理效率以及实际操作过程中的准确性。因此,在该系统的后
6、台就必须得有一个强大的数据库作为其功能的支持。SQL(Structured Query Language)作为一门结构化查询语言,就是关系数据库的标准语言,也就是一个通用的、功能极强的关系数据库语言。当前,几乎所有关系数据库管理系统软件都支持SQL,而许多的软件厂商也对SQL的基本命令集进行了不同程度的扩充与修改,使用户在对其功能的使用上更加的容易。所以,在图书销售管理系统的数据库使用上就选择SQL数据库。部分代码:create table userinfo( usid int primary key, uname varchar2(20), pwd varchar2(20), flag va
7、rchar2(10)create table books( -图书信息 bid int primary key, -主键 bname varchar2(100), -图书名称 ball int, -总数量 buycount int, -订购数量 buytime varchar2(20), -订购时间 buymoney number, -金额 press varchar2(100), -出版社名称 author varchar2(50) -作者名称)select * from books;insert into books values(seq_bid、nextval,oracle,20,50,
8、2014-5-6,20、00,人民出版社,付鹏程);insert into books values(seq_bid、nextval,java,13,40,2014-5-6,30、00,人民出版社,主线程);insert into books values(seq_bid、nextval,c+,44,60,2014-5-6,40、00,人民出版社,阿道夫);insert into books values(seq_bid、nextval,c,53,70,2014-5-6,50、00,人民出版社,许);insert into books values(seq_bid、nextval,c#,69,
9、80,2014-5-6,60、00,人民出版社,农合工);commit;select bid as 编号,bname as 书名,ball as 库存,buycount as 订购数量,buytime as 订购时间,buymoney as 单价,press as 出版社,author as 作者 from books where 1=1create table supplier( -供应商 sid int primary key, -主键 sname varchar2(100), -供应商名字 saddress varchar2(100), -地址 tel varchar2(100), -电
10、话 contact varchar2(100) -联系人)select * from supplier;insert into supplier values(seq_sid、nextval,四色女,湖南,134256,唐先生);insert into supplier values(seq_sid、nextval,常凯申,湖南,134256,费先生);insert into supplier values(seq_sid、nextval,邹平,湖南,134256,李女士);commit;create table customer( -客户信息 cid int primary key, -主键
11、 cname varchar2(50), -客户名字 age varchar2(10), -年龄 sex varchar2(10), -性别 booknum number, -累计购书数量 count number -累计购书金额)select * from customer;update customer set cname=赵伟波 where cid=2insert into customer values(seq_cid、nextval,付鹏程,21,男,1245);insert into customer values(seq_cid、nextval,jeux,26,女,123);in
12、sert into customer values(seq_cid、nextval,胡胜友,18,男,12357);insert into customer values(seq_cid、nextval,李清清,24,女,1245);commit;create table sales( -销售信息 saleid int primary key, -主键 saletime varchar2(20), -时间 count int, -数量 price number, -单价 bid int constraint FK_bid references books(bid), cid int const
13、raint FK_cid references customer(cid), sid int constraint FK_sid references supplier(sid)select s、saleid as 编号,b、bname as 书名,b、press as 出版社,b、author as 作者,s、count as 销售数量 from sales s,books b where s、bid=b、bid order by count desc;select * from sales;insert into sales values(seq_saleid、nextval,2014-5
14、-16,134,29,4,1,1);insert into sales values(seq_saleid、nextval,2014-5-16,14,22,5,2,2);insert into sales values(seq_saleid、nextval,2014-5-16,89,26,6,3,3);select b、bname as 书名,b、press as 出版社,b、author as 作者,s、saletime as 销售时间,s、count as 销售数量,s、price as 销售单价,c、cname as 客户名字,su、sname as 供应商 from sales s,b
15、ooks b,customer c,supplier su where s、bid=b、bid and s、cid=c、cid and s、sid=su、sid commit;create sequence seq_usid increment by 1 start with 1;create sequence seq_bid increment by 1 start with 1;create sequence seq_sid increment by 1 start with 1;create sequence seq_cid increment by 1 start with 1;cre
16、ate sequence seq_saleid increment by 1 start with 1;select sid from supplier where sname=邹平update books set ball=100图书信息表 字段名类型NULL其她备注bnameVarchar2(100)图书名ballint图书总数量buycountint订购信息buytimevarchar2(20)订购时间buymoneynumber金额pressvarchar2(100)出版社名称authorvarchar2(50)作者名称供应商信息表 字段名类型NULL其她备注snameVarchar2
17、(100)供应商名字saddressVarchar2(100)地址telvarchar2(100)电话contactvarchar2(100)联系人客户信息表 字段名类型NULL其她备注 cnamevarchar2(50)客户名称agevarchar2(10)年龄sexvarchar2(10)性别booknumnumber累计购书量countnumber累计购金额销售信息表 字段名类型NULL其她备注saletimevarchar2(20)时间countint数量pricenumber单价4.界面设计1.登陆界面2.主界面3、图书综合管理界面4、订购信息界面5、客户信息管理界面6、销售信息界面
18、5、参考文献 1、 Visual C+ 、net 2003程序设计 何炜等 冶金工业出版社 2、 数据库系统概论(第三版) 萨师煊等 高等教育出版社 3、 Windows用户界面开发 美 Everett N、 McKay著 北京大学出版社 4、 常州VC编程网 用Visual C+开发数据库应用程序 5、 Microsoft MSDN 关于MFC ODBC部分的文档6、课程设计总结此次课程设计就是对我们这一学期所学知识的一次总结,也就是一次检验,更就是我们对自己的一次挑战。通过这次课程设计,我发现自己对SQL的学习还就是非常不够的。但我通过自己的努力,独立完成了这次的设计。从构思到设计,虽然我
19、做得不就是很好,但我在自己摸索的过程中学到了很多东西。在系统设计中,我遇到了很多困难,特别就是操作过程中遇到很多问题。从开始的无从下手,到慢慢入手,我一步一个脚印从无到有学会了很多。因此,我懂得了,只有不断的实践才就是成功的关键。在以后的学习生活中,我一定牢记此次课程设计的经验,努力实践,绝不轻言放弃。不断的提高与完善自己,争取做得更好。附件package com、tane、ui;import org、eclipse、swt、widgets、Display;/* * 登陆界面 * author tane */public class LoginUi /外部帮助类的调用 TrayUtil tra
20、yUtil=new TrayUtil(); /自身类变量的定义 protected Shell shlBookstore; protected Display display; private Text text_1; private Text text_2; /* * Launch the application、 * param args */ public static void main(String args) try LoginUi window = new LoginUi(); window、open(); catch (Exception e) e、printStackTrac
21、e(); /* * Open the window、 */ public void open() display = Display、getDefault(); createContents(); shlBookstore、open(); shlBookstore、layout(); while (!shlBookstore、isDisposed() if (!display、readAndDispatch() display、sleep(); /* * Create contents of the window、 */ protected void createContents() shlB
22、ookstore = new Shell(SWT、NONE); shlBookstore、setBackgroundMode(SWT、INHERIT_FORCE); shlBookstore、setBackgroundImage(SWTResourceManager、getImage(LoginUi、class, /com/tane/image/Login、jpg); shlBookstore、setImage(SWTResourceManager、getImage(LoginUi、class, /com/tane/image/logo、png); shlBookstore、setSize(4
23、50, 300); shlBookstore、setText(BookStore); /* * 设置窗口可拖动 */ Listener listener = new Listener() int startX, startY; public void handleEvent(Event e) if (e、type = SWT、MouseDown & e、button = 1) startX = e、x; startY = e、y; if (e、type = SWT、MouseMove & (e、stateMask & SWT、BUTTON1) != 0) Point p = shlBookst
24、ore、toDisplay(e、x, e、y); p、x -= startX; p、y -= startY; shlBookstore、setLocation(p); ; shlBookstore、addListener(SWT、MouseDown, listener); shlBookstore、addListener(SWT、MouseMove, listener); /*设置居中*/ TrayUtil、center(shlBookstore); Group group = new Group(shlBookstore, SWT、NONE); group、setBounds(42, 102
25、, 343, 115); Label label = new Label(group, SWT、NONE); label、setAlignment(SWT、RIGHT); label、setBounds(10, 34, 77, 17); label、setText(u8D26u53F7uFF1A); Label label_1 = new Label(group, SWT、NONE); label_1、setAlignment(SWT、RIGHT); label_1、setBounds(10, 74, 77, 17); label_1、setText(u5BC6u7801uFF1A); /账号
26、 text_1 = new Text(group, SWT、BORDER); text_1、setBounds(110, 31, 165, 23); /密码 text_2 = new Text(group, SWT、BORDER | SWT、PASSWORD); text_2、setBounds(110, 71, 165, 23); Button button = new Button(shlBookstore, SWT、NONE); button、addSelectionListener(new SelectionAdapter() Override public void widgetSe
27、lected(SelectionEvent e) /取出账号密码,如果账号密码正确就进入主菜单 String name=text_1、getText(); String password=text_2、getText(); if(name、equals(a)&password、equals(a) MainMenuUi mainMenu=new MainMenuUi(); LoginUi、this、shlBookstore、setVisible(false); mainMenu、open(); else UiUtil、getMessage(shlBookstore, 账号或密码错误!); );
28、button、setBounds(98, 250, 80, 27); button、setText(u767B u5F55); Button button_1 = new Button(shlBookstore, SWT、NONE); button_1、setBounds(264, 250, 80, 27); button_1、setText(u6CE8 u518C); Label label_2 = new Label(shlBookstore, SWT、NONE); label_2、setForeground(SWTResourceManager、getColor(SWT、COLOR_MA
29、GENTA); label_2、setFont(SWTResourceManager、getFont(华文行楷, 20, SWT、NORMAL); label_2、setBounds(100, 56, 233, 29); label_2、setText(u5C0Fu578Bu4E66u5E97u7BA1u7406u7CFBu7EDF); /*关闭按钮*/ Label label_3 = new Label(shlBookstore, SWT、NONE); label_3、addMouseListener(new MouseAdapter() Override public void mouseDown(MouseEvent e) /判断就是否真的退出,如果确定,则退出系统,取消的话就返回原来界面 int r
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1