数据库课程设计分销系统.doc

数据库课程设计分销系统.doc
数据库课程设计分销系统.doc

1 系统概述

1.1 应用背景与系统功能

分销是当前国内绝大多数批发型商贸企业以及产供销一体化的制造类企业所采取的销售管理模式,而国内市场的迅猛发展使得传统的销售渠道管理模式在新一轮的竞争中风雨飘摇。随着企业销售规模的扩大,对异地物流和资金流的管理难度越来越大。大部分企业试图采用人海战术来解决此类问题,从总部派驻大量人员到各地。但实际上问题并没有得到解决:手工统计销售数据速度慢,容易出错误,帐物经常不符,造成汇总数据不及时,不准确;销售过程缺乏有效监督,造成大量死帐呆帐,却无法及时追究相关人员责任,有些甚至根本就无法找出责任人。问题的结果造成企业在商品流通领域成本居高不下,企业的生产、市场决策缺乏准确的量化依据,造成企业资源的大量浪费。

本次设计开发的产品分销管理系统,依靠现代化的计算机信息处理技术来管理,从而节省了大量的人力和物力,改善了员工的工作条件,减轻了劳动强度,扩展现有业务和销售能力,实现零风险库存,大大降低分销成本,提高周转效率,确保获得领先一步的竞争优势。

1.2 系统需求分析

本系统要应用于代理商信息、顾客信息、产品信息、订单信息的管理,因此数据库设计必须充分满足这些功能要求。根据系统设计思想,本系统需求如下:1.代理商信息管理

(1)可以查询代理商信息

(2)可以对代理商信息进行添加、修改和删除操作

2.产品信息管理

(1)可以查询产品信息

(2)可以对产品信息进行添加、修改和删除操作

3.顾客信息管理

(1)可以查询顾客信息

(2)可以对顾客信息进行添加和删除操作

4.订单信息管理

(1)可以查询订单信息

(2)可以对订单信息进行添加、修改和删除操作1.3 系统结构设计

系统的结构设计如图1.1所示。

图1.1系统功能模块图

2 数据库设计

2.1 数据库概念结构设计

在本系统中,需要保存代理商信息,顾客信息、产品信息和订单信息,通过数据库技术,将这些数据保存到数据库中,可方便对这些数据的管理,数据库设计如下:

1.建立一个产品分销的数据库,由下面四个表组成:

代理商(代理商编号,姓名,薪水)

顾客(顾客编号,姓名)

产品(产品编号,产品名称,产品价格)

订单(订单编号,购买日期,代理商编号,顾客编号,产品编号,订购数量,订金)

2.建表,在定义中要求声明:每个表的主外码;订购数量大于0,所有字段不为空。通过对上面对系统的总体分析,我们可以得到整个系统的实体-关系模型(E-R模型),如图2.1所示。

图2.1 整个系统的E-R模型

2.2 数据库逻辑结构设计

数据的概念结构设计完毕后,可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。各数据表之间的关系如图2.2所示。

图2.2 数据库关系图

2.3 数据库的生成与配置

1.使用企业管理器创建一个产品分销管理系统的数据库,取名为产品分销系统。

2.使用查询分析器,输入代码,为产品分销管理系统数据库建立名为agenr9527、customer9527、product9527和orders9527的四个表,并分别对四个表实施约束并设置主码和外码,在表中插入数据,得到结果如图2.3,2.4,2.5,2.6所示。

图2.3Agent9527表

图2.4 customer9527表

图2.5 customer9527表

图2.6Orders9527表

3 系统具体实现3. 1登录模块设计

在显示主窗体之前,首先必须通过身份认证,实现的主要过程是:进入登录窗体,如图3.1所示。在该窗体中输入用户名和密码,单击“确定”,如果用户名和密码都正确,则将隐藏登录窗体,显示主窗体;如果用户名或密码输入错误,则将显示提示信息,单击“确定”,返回登录窗体,此时用户名与密码已全部清空,需重新输入正确信息。若单击“取消”,则退出“登录”窗体。若单击“重试”,则清空用户名和密码,重新输入。

图3.1 登录窗体

3.2 主窗体模块设计

在本系统中,通过主窗体的菜单栏来连接其它实现系统数据查询、添加、修改等操作的窗体,如图3.2所示。在主窗体菜单栏编辑如下:

1.系统:查看用户信息,退出

2.代理商:查看代理商信息,添加代理商信息,修改代理商信息,删除代理商信息

3.顾客:查看顾客信息,添加顾客信息,修改顾客信息,删除顾客信息

4.产品:查看产品信息,添加产品信息,修改产品信息,删除产品信息

5.订单:查看订单信息,添加订单信息,修改订单信息,删除订单信息

图3.2 主窗体

3.2.1系统模块设计

在系统下拉菜单中有用户信息、重新登录、学生学籍信息、退出,功能就如标题所显示。当点击查看用户信息时,有窗口弹出,如图3.3所示,点击确定返回主界面。

图3.3

当点击退出时,系统直接退出。

3.2.2 代理商信息模块

在代理商信息管理的下拉菜单中有查看代理商信息、添加代理商,修改代理商,删除代理商,分别对代理商表进行操作。当点击查看代理商信息时,打开查看代理商信息界面,如图3.4所示。

图3.4查看代理商信息

当点击修改代理商信息时,打开修改代理商信息界面,如图3.5所示。

图3.5修改代理商信息

当点击添加代理商信息时,打开添加代理商信息界面,如图3.6所示。

图3.6修改代理商信息

当点击删除代理商信息时,打开删除代理商信息界面,如图3.7所示。

图3.7修改代理商信息

3.2.3 顾客信息模块

在顾客信息管理的下拉菜单中有查看顾客信息、添加顾客,修改顾客,删除顾客,分别对顾客表进行操作。当点击查看顾客信息时,打开查看顾客信息界面,如图3.8所示。

图3.8查看顾客信息

当点击修改顾客信息时,打开修改顾客信息界面,如图3.9所示。

图3.9修改顾客信息

当点击添加顾客信息时,打开添加顾客信息界面,如图3.10所示。

图3.10添加顾客信息

当点击删除顾客信息时,打开删除顾客信息界面,如图3.11所示。

图3.11删除顾客信息

3.2.4 产品信息模块

在产品信息管理的下拉菜单中有查看产品信息、添加产品,修改产品,删除顾客,分别对产品表进行操作。当点击查看产品信息时,打开查看产品信息界面,如图3.12所示。

图3.12查看产品信息

当点击修改产品信息时,打开修改产品信息界面,如图3.13所示。

图3.13修改顾客信息

当点击添加产品信息时,打开添加产品信息界面,如图3.14所示。

图3.14添加顾客信息

当点击删除顾客信息时,打开删除顾客信息界面,如图3.15所示。

图3.15删除顾客信息

3.2.4 订单信息模块

在订单信息管理的下拉菜单中有查看订单信息、添加订单,修改订单,删除订单,分别对订单表进行操作。当点击查看订单信息时,打开查看产品信息界面,如图3.16所示。

图3.16查看产品信息

当点击修改产品信息时,打开修改订单信息界面,如图3.17所示。

图3.17修改顾客信息

当点击添加产品信息时,打开添加产品信息界面,如图3.18所示。

图3.18添加顾客信息

当点击删除顾客信息时,打开删除顾客信息界面,如图3.19所示。

图3.19删除顾客信息

4 总结

通过课程设计期间对数据库和Visual Basic6.0的学习,我对数据库和Visual

Basic6.0

有了初步的了解,并掌握了数据库的基础知识和常用命令,以及Visual Basic6.0的简单应用。我学会了如何应用SQL Server的企业管理器和查询分析器建立数据库,并用SQL语句作查询、添加、修改和删除操作,能够应用Visual Basic6.0制作简单的系统。学习的过程激起了我对计算机更多的兴趣,也让我对计算机实际应用有了一个更全面的认识。我会在今后更深入系统地学习计算机程序语言,以掌握更多的知识。感谢老师和同学的帮助,让我学到了很多东西。

附:SQL语句

create table Agent9527

(AID varchar(8),

ANAME varchar(8)not null,

SALARY INT NOT NULL,

primary key(AID)

)

create table Customer9527

(CID varchar(8),

CNAME varchar(8) not null,

primary key(CID)

)

CREATE table Product9527

(PID varchar(8),

PNAME varchar(8)not null,

PRICE real not null,

primary key(PID)

)

CREATE table Orders9527

(OID varchar(8),

BUY_DATE DATETIME not null,

CID varchar(8)not null,

AID varchar(8)not null,

PID varchar(8)not null,

QTY int not null,

DOLLARS int not null,

primary key(OID),

FOREIGN KEY (CID) REFERENCES Customer9527(CID),

FOREIGN KEY (AID) REFERENCES Agent9527(AID),

FOREIGN KEY (PID) REFERENCES Product9527(PID)

)

insert into Agent9527 values(01,'一一',10000)

insert into Agent9527 values(02,'慕慕',7000)

insert into Agent9527 values(03,'梦梦',5000)

insert into Agent9527 values(04,'洋洋',7200)

insert into Agent9527 values(05,'琳琳',4800)

insert into Agent9527 values (06,'乐乐',5500)

insert into Customer9527 values (001,'乐购')

insert into Customer9527 values(002,'家乐福')

insert into Customer9527 values(003,'woerma')

insert into Customer9527 values(004,'嘉惠')

insert into Customer9527 values(005,'广缘')

insert into Product9527 values('01','薯片',0.5)

insert into Product9527 values('02','酸奶',0.5)

insert into Product9527 values('03','饼干',1)

insert into Product9527 values('04','泡面',1)

insert into Product9527 values ('05', '苹果',1)

insert into Orders9527 values ('1011','2002-4-8','1','1','01',1000,450)

insert into Orders9527 values ('1012','2001-4-1','1','2','02',400,180)

insert into Orders9527 values ('1013','2002-1-1','2','3','03',1000,880)

insert into Orders9527 values ('1014','2001-5-1','2','5','03',800,704)

insert into Orders9527 values ('1015','2002-1-1','3','3','05',1200,1104)

insert into Orders9527 values ('1016','2001-8-1','4','4','01',1000,460)

insert into Orders9527 values ('1017','2002-9-1','4','1','04',1000,500)

insert into Orders9527 values ('1018','2001-3-6','4','1','01',800,400)

select * from Agent9527 where AID='" & txtagentaid.Text & "'

INSERT INTO Agent9527 V ALUES( '" + Trim(txtagentaid.Text) + "','" + Trim(txtagentname.Text) + "','" + Trim(txtagentsalary.Text) + "')

select * from CUSTOMER9527 where CID='" & txtcustomercid.Text & "'

INSERT INTO Customer9527 V ALUES( '" + Trim(txtcustomercid.Text) + "','" + Trim(txtcustomername.Text) + "') select * from Orders9527 where OID='" & txtordersoid.Text & "'

INSERT INTO Orders9527 V ALUES( '" + Trim(txtordersoid.Text) + "','" + Trim(txtordersdate.Text) + "','" + Trim(txtagentaid.Text) + "','" + Trim(txtproductpid.Text) + "','" + Trim(txtcustomercid.Text) + "','" + Trim(txtqtymon.Text) + "','" + Trim(txtdollars.Text) + "')

select * from Product9527 where PID='" & txtproductpid.Text & "'

相关主题
相关文档
最新文档