数据库课程设计货存控制系统.docx

上传人:b****5 文档编号:8022757 上传时间:2023-01-28 格式:DOCX 页数:67 大小:1.74MB
下载 相关 举报
数据库课程设计货存控制系统.docx_第1页
第1页 / 共67页
数据库课程设计货存控制系统.docx_第2页
第2页 / 共67页
数据库课程设计货存控制系统.docx_第3页
第3页 / 共67页
数据库课程设计货存控制系统.docx_第4页
第4页 / 共67页
数据库课程设计货存控制系统.docx_第5页
第5页 / 共67页
点击查看更多>>
下载资源
资源描述

数据库课程设计货存控制系统.docx

《数据库课程设计货存控制系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计货存控制系统.docx(67页珍藏版)》请在冰豆网上搜索。

数据库课程设计货存控制系统.docx

数据库课程设计货存控制系统

数据库课程设计

——货存控制系统

 

一、课程设计题目:

货存管理系统一个公司希望为控制它的货存建立一个数据库,货存中的产品被分为几类,如服装、食品和文具。

当产品需要从供应商那里重新订购时,工作人员需要提出一个购买订单。

跟踪记录要提供买进、卖出的货物以及其他的费用。

实验课程任务与要求目的与任务:

1.掌握数据库设计和实现的基本过程2.掌握数据库模式设计、分析和实现的方法3.了解数据库应用系统软件开发的一般过程。

实验基本要求:

(1)学习相关的预备知识

(2)按照数据库设计与实现过程完成数据库的设计,应用程序的开发,上机调试、运行

(3)写出课程设计报告

开发环境说明:

处理器:

IntelPentium43.06以上

内存:

256M以上

硬盘空间:

40G以上

操作系统:

windows2000/XP/win7

开发软件:

C++Builder6.0

数据库:

MicrosoftSQLService2000

二、功能需求分析:

根据系统要求分析,本系统功能如下:

用户管理:

添加用户,修改用户密码。

客户管理:

添加客户,查询客户信息。

供应商管理:

添加供应商,查询供应商信息。

仓库管理:

添加仓库,查询仓库信息。

货物管理:

添加物品信息,物品类型信息。

入库管理:

货物的入库信息的添加和修改。

出库管理:

货物的出库信息的添加和修改。

库存信息:

对货物的现有信息存量查询。

三、数据库概念设计:

本实例根据根据上面的设计规划出的实体有仓库实体、客户实体、供应商实体、管理员实体、货物实体、货物类型实体、入库实体、出库实体、库存实体。

各个实体的E-R图描述如下:

仓库实体E-R图

供应商实体E-R图

客户实体E-R图

管理员实体E-R图

货物实体E-R图

货物类型实体E-R图

入库实体E-R图

出库实体E-R图

库存实体E-R图

整体E-R图如下所示:

四、数据库逻辑设计:

关系数据库的数据模型(即关系模型)由一组关系模式组成,因而ER图向关系模型的转换实际上就是将实体(包括实体的属性)和联系转换为关系模式,一般遵循以下基本原则:

1.一个实体型转换为一个关系模式。

实体的属性就是关系的属性,实体的码就是关系的码。

2.一个1:

X(X为1或n)联系通常与某一端的关系模式合并,其中1:

n的联系需要与n端对应的关系模式合并。

需要在合并的关系模式的属性中加入另一个关系模式的码和联系本身的属性。

3.一个m:

n联系转换为一个关系模式。

与该关系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

4.三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体的码的组合。

5.具有相同码的关系模式可合并。

使用SQLserver2000企业管理器建立数据库和表(也可使用SQL语句建立数据库)。

数据库包括:

1.仓库的数据项描述:

Storage

数据项名

对应英文名

数据项含义

类型

长度

说明

仓库编号

Sno

仓库的编号

char

5

主键

仓库名称

Sname

仓库的名称

char

20

仓库地址

Saddr

仓库的地址

char

40

管理员编号

Mno

管理员的编号

char

5

外键

仓库面积

Ssize

仓库的大小

int

2.供应商的数据项描述:

Provider

数据项名

对应英文名

数据项含义

类型

长度

说明

供应商编号

Pno

供应商的识别号码

char

5

主键

供应商名称

Pname

供应商公司的名称

char

20

供应商地址

Paddr

供应商公司的地址

char

40

邮编

Postcode

公司的邮编

char

6

电话

Ptel

公司的电话

char

11

3.客户的数据项描述:

Client

数据项名

对应英文名

数据项含义

类型

长度

说明

客户编号

Cno

客户的编号

char

5

主键

客户名称

Cname

客户公司的名称

char

20

地址

Caddr

客户公司的地址

char

40

联系电话

Ctel

客户联系电话

char

11

4.货物的数据项描述:

Goods

数据项名

对应英文名

数据项含义

类型

长度

说明

物品编号

Gno

物品的编号

char

5

主键

物品名称

Gname

物品的名称

char

20

类型编号

Tno

物品的类型

char

5

外键

5.货物类型的数据项描述:

Type

数据项名

对应英文名

数据项含义

类型

长度

说明

类型编号

Tno

物品的类型的编号

char

5

主键

类型名称

Tname

物品的类型的名称

char

20

类型描述

Tdescription

物品的类型的描述

char

50

6.管理员的数据项描述:

Manager

数据项名

对应英文名

数据项含义

类型

长度

说明

管理员编号

Mno

管理员的编号

char

5

主键

管理员姓名

Mname

管理员的姓名

char

20

密码

PW

该管理员的密码

Char

6

7.库存的数据项描述:

Stock

数据项名

对应英文名

数据项含义

类型

长度

说明

物品编号

Gno

货物表中物品编号

Char

5

外键、主键

仓库编号

Sno

仓库的编号

Char

5

外键

物品名称

Gname

货物的名称

Char

10

类型名称

Tname

货物的分类

Char

20

物品数量

Gnum

货物的存储量

Int

入库(合计)-出库(合计)

8.入库的数据项描述:

Stock_In

数据项名

对应英文名

数据项含义

类型

长度

说明

物品编号

Gno

货物表中物品编号

Char

5

外键、主键

供应商编号

Pno

供应商的编号

Char

5

外键、主键

物品名称

Gname

货物的名称

Char

10

类型名称

Tname

货物的分类

Char

20

购入单价

Ginprice

货物购入的价格

Real

入库数量

Innum

入库的数量

Int

采购金额

Inprice

本次采购的金额

Real

购入单价*入库数量

入库日期

Indate

入库的时间

Char

20

9.出库的数据项描述:

Stock_Out

数据项名

对应英文名

数据项含义

类型

长度

说明

物品编号

Gno

货物表中物品编号

Char

5

外键、主键

客户编号

Cno

客户的编号

Char

5

外键、主键

物品名称

Gname

货物的名称

Char

10

类型名称

Tname

货物的分类

Char

4

出售单价

Goutprice

货物出售的价格

Real

出库数量

Outnum

出库的数量

Int

出库金额

Outprice

本次出库的金额

Real

出库数量*出售单价

出库日期

Outdate

出库的时间

Char

20

五、系统开发

1.数据库建立

Createdatabasestorage_manage;

供应商Provider

createtableProvider(

Pnochar(5)primarykey,

Pnamechar(20),

Padddrchar(40),

Postcodechar(6),

Ptelchar(11)

);

客户Client

createtableClient(

Cnochar(5)primarykey,

Cnamechar(20),

Caddrchar(40),

Ctelchar(11)

);

货物类型Type

createtableType(

Tnochar(5)primarykey,

Tnamechar(20),

Tdescriptionchar(50)

);

货物Goods

createtableGoods(

Gnochar(5)primarykey,

Gnamechar(20),

Tnochar(5),

foreignkey(Tno)referencesType(Tno)

);

管理员Manager

createtableManager(

Mnochar(5)primarykey,

Mnamechar(20),

PWchar(6)

);

仓库Storage

createtableStorage(

Snochar(5)primarykey,

Snamechar(20),

Saddrchar(40),

Mnochar(5),

Ssizeint,

foreignkey(Mno)referencesManager(Mno)

);

库存Stock

createtableStock(

Gnochar(5),

Snochar(5),

Gnamechar(10),

Tnamechar(20),

Gnumint,

primarykey(Gno),

foreignkey(Gno)referencesGoods(Gno),

foreignkey(Sno)referencesStorage(Sno)

);

入库Stock_In

createtableStock_In(

Gnochar(5),

Pnochar(5),

Gnamechar(10),

Tnamechar(20),

Ginpricereal,

Innumint,

Inpricereal,

Indatachar(20),

primarykey(Gno,Pno),

foreignkey(Gno)referencesGoods(Gno),

foreignkey(Pno)referencesProvider(Pno)

);

出库Stock_Out

createtableStock_Out(

Gnochar(5),

Cnochar(5),

Gnamechar(10),

Tnamechar(20),

Goutpricereal,

Outnumint,

Outpricereal,

Outdatachar(20),

primarykey(Gno,Cno),

foreignkey(Gno)referencesGoods(Gno),

foreignkey(Cno)referencesClient(Cno)

);

2、界面设计

Form1

//---------------------------------------------------------------------------

#include

#pragmahdrstop

#include"Unit1.h"

#include"Unit2.h"

//---------------------------------------------------------------------------

#pragmapackage(smart_init)

#pragmaresource"*.dfm"

TForm1*Form1;

//---------------------------------------------------------------------------

__fastcallTForm1:

:

TForm1(TComponent*Owner)

:

TForm(Owner)

{

}

//---------------------------------------------------------------------------

void__fastcallTForm1:

:

Button1Click(TObject*Sender)

{

ADOQuery1->SQL->Clear();

ADOQuery1->SQL->Add("select*fromManager");

ADOQuery1->SQL->Add("whereMname='"+Edit1->Text+"'andPW='"+Edit2->Text+"'");

if(ADOQuery1->ExecSQL())

{

ShowMessage("登陆成功");

Form2->Show();

}

else

{

ShowMessage("用户名或密码错误!

");

}

}

//---------------------------------------------------------------------------

void__fastcallTForm1:

:

Button2Click(TObject*Sender)

{

Close();

}

//---------------------------------------------------------------------------

Form2

//---------------------------------------------------------------------------

#include

#pragmahdrstop

#include"Unit2.h"

#include"Unit1.h"

#include"unit3.h"

#include"unit4.h"

#include"Unit5.h"

#include"Unit6.h"

#include"Unit7.h"

#include"Unit8.h"

#include"Unit9.h"

#include"Unit10.h"

#include"Unit11.h"

#include"Unit12.h"

#include"Unit13.h"

#include"Unit14.h"

#include"Unit15.h"

#include"Unit16.h"

//---------------------------------------------------------------------------

#pragmapackage(smart_init)

#pragmaresource"*.dfm"

TForm2*Form2;

//---------------------------------------------------------------------------

__fastcallTForm2:

:

TForm2(TComponent*Owner)

:

TForm(Owner)

{

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N5Click(TObject*Sender)

{

Form3->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N6Click(TObject*Sender)

{

Form4->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N18Click(TObject*Sender)

{

Form1->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N8Click(TObject*Sender)

{

Form6->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N7Click(TObject*Sender)

{

Form5->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N12Click(TObject*Sender)

{

Form10->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N9Click(TObject*Sender)

{

Form7->Show();

Form2->Close();

}

//--------------------------------------------------------------------------

void__fastcallTForm2:

:

N10Click(TObject*Sender)

{

Form8->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N16Click(TObject*Sender)

{

Form9->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N13Click(TObject*Sender)

{

Form12->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N14Click(TObject*Sender)

{

Form11->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N15Click(TObject*Sender)

{

Form14->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N11Click(TObject*Sender)

{

Form9->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N17Click(TObject*Sender)

{

Form15->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

void__fastcallTForm2:

:

N19Click(TObject*Sender)

{

Form16->Show();

Form2->Close();

}

//---------------------------------------------------------------------------

Form3

//---------------------------------------------------------------------------

#include

#pragmahdrstop

#include"Unit3.h"

#include"Unit2.h"

//---------------------------------------------------------------------------

#pragmapackage(smart_init)

#pragmaresource"*.dfm"

TForm3*Form3;

//---------------------------------------------------------------------------

__fastcallTForm3:

:

TForm3(TComponent*Owner)

:

TForm(Owner)

{

}

//----------------------------------------------------------------------

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

当前位置:首页 > 总结汇报 > 学习总结

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

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