数据库课程设计图书销售管理系统.docx

上传人:b****5 文档编号:7369010 上传时间:2023-01-23 格式:DOCX 页数:18 大小:2.60MB
下载 相关 举报
数据库课程设计图书销售管理系统.docx_第1页
第1页 / 共18页
数据库课程设计图书销售管理系统.docx_第2页
第2页 / 共18页
数据库课程设计图书销售管理系统.docx_第3页
第3页 / 共18页
数据库课程设计图书销售管理系统.docx_第4页
第4页 / 共18页
数据库课程设计图书销售管理系统.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库课程设计图书销售管理系统.docx

《数据库课程设计图书销售管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计图书销售管理系统.docx(18页珍藏版)》请在冰豆网上搜索。

数据库课程设计图书销售管理系统.docx

数据库课程设计图书销售管理系统

《数据库原理》课程设计报告

专业:

软件工程

班级:

软件1201、软件1202

学号:

**********、**********

姓名:

向文静、黄鹏

题目名称:

图书销售管理系统

完成日期:

2014年5月25日

计算机学院实验中心

引言

随着计算机的普及书店规模的不断扩大,传统的图书销售管理方法,都就是通过人工统计与计算的管理方式进行的。

这样的管理方法不但费时费力,也容易产生计算上的错误与疏漏;计算机技术的全面普及,打破了书店管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对图书销售与库存进行管理。

通过图书销售管理系统可以解决书店管理中遇到的各种问题,该图书销售管理系统分析了市场需求与实际需要,利用MicrosoftVisualStudio2008连接SQL数据库的方式,实现了书店的图书销售等一系列管理,该系统具有处理图书录入、图书销售及管理、图书查询、报表查询等功能。

第一章系统分析

1、1功能需求:

本系统就是根据书店的实际需求而开发的,要求稳定、可靠的实现图书销售的自动化管理,通过本系统可以达到以下目标:

a、用户管理:

对系统所有用户的相关信息进行管理。

b、图书管理:

对图书信息进行添加以及编辑,对图书基本信息的录入及编辑包括图书类别、图书进价、图书售价、图书出版社、图书折扣、图书作者等。

c、图书销售管理:

对图书的销售信息进行动态添加并实现对图书库存量的动态修改等,所添加的图书销售信息包括图书的售价、折扣、销售日期。

d、查询管理:

用户根据实际需要对图书、图书销售、图书库存等信息分类查询。

e、报表查询:

系统用户可以通过对时间段的选择来查瞧该段时间内图书的销售情况,以便于做出更为合理的销售计划、提高效益。

f、数据管理:

为了防止系统用户的误操作,用户可以根据自己的需要对图书信息、销售数据等进行备份等操作。

1、2待开发软件功能:

通过以上的系统目标分析,根据以上系统所要满足的功能,设计出了图书销售管理系统的主要功能模块图,如图1、1所示。

该图书销售管理系统就是根据书店的情况结合实际需求而开发的,完全能够帮助书店实现高效、准确的图书销售自动化管理。

2、1系统主要功能模块设计:

结合前面对系统功能的分析,以及MicrosoftVisualStudio2008开发环境的特点,得到如下图所示的系统功能模块图:

图2、1图书销售管理系统主要功能模块图

系统各个模块功能分配如下:

(1)图书信息模块:

对图书的各种信息、类别进行录入、管理;

(3)供应商信息模块:

对供应商供应的各种图书信息进行录入、管理;

(4)客户信息模块:

对各种信息进行统计、查询;

(5)销售信息模块:

对销售完的图书进行统计、查询;

2、2系统处理流程分析:

(1)系统启动,选择登录类型并进行身份验证(账户、密码均为a、a)

(2)登录成功后,进入系统主界面;

(3)系统初始化,导入数据库;

(4)登录成功后可以进行相应的功能选择并进行操作;

(5)退出系统。

2、3系统接口设计:

2、3、1外部接口

(1)界面:

采用GUI图形用户界面,含菜单、图片控件、Button按钮、文本框等元素。

(2)软件接口:

系统运行于JAVA开发环境下。

(3)硬件接口:

运行于PC机上。

3、1系统数据库分析:

通过对图书销售管理系统的功能分析我们已知道,图书销售管理系统具有处理图书录入、图书销售、销售统计、查询库存等功能,通过该系统能够帮助用户迅速准确的对已销售图书与剩余库存图书进行统计与销售数据的汇总工作,以此来提高书店的管理效率以及实际操作过程中的准确性。

因此,在该系统的后台就必须得有一个强大的数据库作为其功能的支持。

SQL(StructuredQueryLanguage)作为一门结构化查询语言,就是关系数据库的标准语言,也就是一个通用的、功能极强的关系数据库语言。

当前,几乎所有关系数据库管理系统软件都支持SQL,而许多的软件厂商也对SQL的基本命令集进行了不同程度的扩充与修改,使用户在对其功能的使用上更加的容易。

所以,在图书销售管理系统的数据库使用上就选择SQL数据库。

部分代码:

createtableuserinfo(

usidintprimarykey,

unamevarchar2(20),

pwdvarchar2(20),

flagvarchar2(10)

createtablebooks(--图书信息

bidintprimarykey,--主键

bnamevarchar2(100),--图书名称

ballint,--总数量

buycountint,--订购数量

buytimevarchar2(20),--订购时间

buymoneynumber,--金额

pressvarchar2(100),--出版社名称

authorvarchar2(50)--作者名称

select*frombooks;

insertintobooksvalues(seq_bid、nextval,'oracle',20,50,'2014-5-6',20、00,'人民出版社','付鹏程');

insertintobooksvalues(seq_bid、nextval,'java',13,40,'2014-5-6',30、00,'人民出版社','主线程');

insertintobooksvalues(seq_bid、nextval,'c++',44,60,'2014-5-6',40、00,'人民出版社','阿道夫');

insertintobooksvalues(seq_bid、nextval,'c',53,70,'2014-5-6',50、00,'人民出版社','许');

insertintobooksvalues(seq_bid、nextval,'c#',69,80,'2014-5-6',60、00,'人民出版社','农合工');

commit;

selectbidas编号,bnameas书名,ballas库存,buycountas订购数量,buytimeas订购时间,buymoneyas单价,pressas出版社,authoras作者frombookswhere1=1

createtablesupplier(--供应商

sidintprimarykey,--主键

snamevarchar2(100),--供应商名字

saddressvarchar2(100),--地址

telvarchar2(100),--电话

contactvarchar2(100)--联系人

select*fromsupplier;

insertintosuppliervalues(seq_sid、nextval,'四色女','湖南','134256','唐先生');

insertintosuppliervalues(seq_sid、nextval,'常凯申','湖南','134256','费先生');

insertintosuppliervalues(seq_sid、nextval,'邹平','湖南','134256','李女士');

commit;

createtablecustomer(--客户信息

cidintprimarykey,--主键

cnamevarchar2(50),--客户名字

agevarchar2(10),--年龄

sexvarchar2(10),--性别

booknumnumber,--累计购书数量

countnumber--累计购书金额

select*fromcustomer;

updatecustomersetcname='赵伟波'wherecid=2

insertintocustomervalues(seq_cid、nextval,'付鹏程','21','男',1245);

insertintocustomervalues(seq_cid、nextval,'jeux','26','女',123);

insertintocustomervalues(seq_cid、nextval,'胡胜友','18','男',12357);

insertintocustomervalues(seq_cid、nextval,'李清清','24','女',1245);

commit;

createtablesales(--销售信息

saleidintprimarykey,--主键

saletimevarchar2(20),--时间

countint,--数量

pricenumber,--单价

bidintconstraintFK_bidreferencesbooks(bid),

cidintconstraintFK_cidreferencescustomer(cid),

sidintconstraintFK_sidreferencessupplier(sid)

selects、saleidas编号,b、bnameas书名,b、pressas出版社,b、authoras作者,s、countas销售数量fromsaless,booksbwheres、bid=b、bidorderbycountdesc;

select*fromsales;

insertintosalesvalues(seq_saleid、nextval,'2014-5-16',134,29,4,1,1);

insertintosalesvalues(seq_saleid、nextval,'2014-5-16',14,22,5,2,2);

insertintosalesvalues(seq_saleid、nextval,'2014-5-16',89,26,6,3,3);

selectb、bnameas书名,b、pressas出版社,b、authoras作者,s、saletimeas销售时间,s、countas销售数量,s、priceas销售单价,c、cnameas客户名字,su、snameas供应商fromsaless,booksb,customerc,suppliersuwheres、bid=b、bidands、cid=c、cidands、sid=su、sid

commit;

createsequenceseq_usidincrementby1startwith1;

createsequenceseq_bidincrementby1startwith1;

createsequenceseq_sidincrementby1startwith1;

createsequenceseq_cidincrementby1startwith1;

createsequenceseq_saleidincrementby1startwith1;

selectsidfromsupplierwheresname='邹平'

updatebookssetball=100

图书信息表

字段名

类型

NULL

其她

备注

bname

Varchar2(100)

图书名

ball

int

图书总数量

buycount

int

订购信息

buytime

varchar2(20)

订购时间

buymoney

number

 

 

金额

press

varchar2(100)

出版社名称

author

varchar2(50)

作者名称

供应商信息表

字段名

类型

NULL

其她

备注

sname

Varchar2(100)

供应商名字

saddress

Varchar2(100)

地址

tel

varchar2(100)

电话

contact

varchar2(100)

联系人

客户信息表

字段名

类型

NULL

其她

备注

cname

varchar2(50)

客户名称

age

varchar2(10)

年龄

sex

varchar2(10)

性别

booknum

number

累计购书量

count

number

 

 

累计购金额

销售信息表

字段名

类型

NULL

其她

备注

saletime

varchar2(20)

时间

count

int

数量

price

number

 

 

单价

4.界面设计

1.登陆界面

2.主界面

3、图书综合管理界面

4、订购信息界面

5、客户信息管理界面

6、销售信息界面

5、参考文献

1、《VisualC++、net2003程序设计》何炜等冶金工业出版社

2、《数据库系统概论(第三版)》萨师煊等高等教育出版社

3、《Windows用户界面开发》[美]EverettN、McKay著北京大学出版社

4、常州VC编程网用VisualC++开发数据库应用程序

5、MicrosoftMSDN关于MFCODBC部分的文档

6、课程设计总结

此次课程设计就是对我们这一学期所学知识的一次总结,也就是一次检验,更就是我们对自己的一次挑战。

通过这次课程设计,我发现自己对SQL的学习还就是非常不够的。

但我通过自己的努力,独立完成了这次的设计。

从构思到设计,虽然我做得不就是很好,但我在自己摸索的过程中学到了很多东西。

在系统设计中,我遇到了很多困难,特别就是操作过程中遇到很多问题。

从开始的无从下手,到慢慢入手,我一步一个脚印从无到有学会了很多。

因此,我懂得了,只有不断的实践才就是成功的关键。

在以后的学习生活中,我一定牢记此次课程设计的经验,努力实践,绝不轻言放弃。

不断的提高与完善自己,争取做得更好。

附件

packagecom、tane、ui;

importorg、eclipse、swt、widgets、Display;

/**

*登陆界面

*@authortane

*/

publicclassLoginUi{

//外部帮助类的调用

TrayUtiltrayUtil=newTrayUtil();

//自身类变量的定义

protectedShellshlBookstore;

protectedDisplaydisplay;

privateTexttext_1;

privateTexttext_2;

/**

*Launchtheapplication、

*@paramargs

*/

publicstaticvoidmain(String[]args){

try{

LoginUiwindow=newLoginUi();

window、open();

}catch(Exceptione){

e、printStackTrace();

}

}

/**

*Openthewindow、

*/

publicvoidopen(){

display=Display、getDefault();

createContents();

shlBookstore、open();

shlBookstore、layout();

while(!

shlBookstore、isDisposed()){

if(!

display、readAndDispatch()){

display、sleep();

}

}

}

/**

*Createcontentsofthewindow、

*/

protectedvoidcreateContents(){

shlBookstore=newShell(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(450,300);

shlBookstore、setText("BookStore");

/**

*设置窗口可拖动

*/

Listenerlistener=newListener(){

intstartX,startY;

publicvoidhandleEvent(Evente){

if(e、type==SWT、MouseDown&&e、button==1){

startX=e、x;

startY=e、y;

}

if(e、type==SWT、MouseMove&&(e、stateMask&SWT、BUTTON1)!

=0){

Pointp=shlBookstore、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);

Groupgroup=newGroup(shlBookstore,SWT、NONE);

group、setBounds(42,102,343,115);

Labellabel=newLabel(group,SWT、NONE);

label、setAlignment(SWT、RIGHT);

label、setBounds(10,34,77,17);

label、setText("\u8D26\u53F7\uFF1A");

Labellabel_1=newLabel(group,SWT、NONE);

label_1、setAlignment(SWT、RIGHT);

label_1、setBounds(10,74,77,17);

label_1、setText("\u5BC6\u7801\uFF1A");

//账号

text_1=newText(group,SWT、BORDER);

text_1、setBounds(110,31,165,23);

//密码

text_2=newText(group,SWT、BORDER|SWT、PASSWORD);

text_2、setBounds(110,71,165,23);

Buttonbutton=newButton(shlBookstore,SWT、NONE);

button、addSelectionListener(newSelectionAdapter(){

@Override

publicvoidwidgetSelected(SelectionEvente){

//取出账号密码,如果账号密码正确就进入主菜单

Stringname=text_1、getText();

Stringpassword=text_2、getText();

if(name、equals("a")&&password、equals("a")){

MainMenuUimainMenu=newMainMenuUi();

LoginUi、this、shlBookstore、setVisible(false);

mainMenu、open();

}else{

UiUtil、getMessage(shlBookstore,"账号或密码错误!

");

}

}

});

button、setBounds(98,250,80,27);

button、setText("\u767B\u5F55");

Buttonbutton_1=newButton(shlBookstore,SWT、NONE);

button_1、setBounds(264,250,80,27);

button_1、setText("\u6CE8\u518C");

Labellabel_2=newLabel(shlBookstore,SWT、NONE);

label_2、setForeground(SWTResourceManager、getColor(SWT、COLOR_MAGENTA));

label_2、setFont(SWTResourceManager、getFont("华文行楷",20,SWT、NORMAL));

label_2、setBounds(100,56,233,29);

label_2、setText("\u5C0F\u578B\u4E66\u5E97\u7BA1\u7406\u7CFB\u7EDF");

/**关闭按钮*/

Labellabel_3=newLabel(shlBookstore,SWT、NONE);

label_3、addMouseListener(newMouseAdapter(){

@Override

publicvoidmouseDown(MouseEvente){

//判断就是否真的退出,如果确定,则退出系统,取消的话就返回原来界面

intr

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1