超市管理系统说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.2数据库设计
2.2.1实体E-R图
这一设计阶段是在需求分析的基础上,设计出能满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。将现实世界的实体,属性和联系转化为抽象的概括的概念模型。
构成E-R图的基本要素是实体型、属性和联系。
超市基本信息的实体-属性图,如图2所示。
图2超市基本信息实体-属性图
图1 功能模块图
总实体图,如图3所示。
图3 总实体图
2.2.2数据库逻辑设计
将关系模型转换成具体DBMS支持的实际关系数据模型,如下面的几个表格所示。(每个表格表示在数据库中的一个表)
商品分类表包括编号、名称、备注字段,如表1所示。
表1 商品分类表
列名数据类型是否为空字段宽度默认值说明
编号int 否10 主键
名称Varchar(50) 否50
备注char 10
管理员基本信息表包括姓名、权限、身份证号、密码等字段,如表2所示。
表2 管理员基本信息表
条形码int 否20 主键
进货价货币型否10 0.00
零售价货币型否10 0.00
会员价货币型否10 0.00
业务提成货币型否10 0.00 说明原因库存int 10
在上面的实体以及实体之间的关系的基础上,形成数据库中的表格和各个表格之间的关系,即关系模型。设计关系模型并对其进行优化:
确定数据依赖,给出关系模式中的主码,明确其依赖关系。对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。对照数据依赖的理论对各个关系模式逐一进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖,确定各个关系模式分别所属的范式类型。按照需求分析阶段得到的处理要求,分析对于这样的应用环境这些模式是否合适,对某些模式检查是否有合并或分解的需要。对关系模式进行必要的分解,提高数据操作效率和存储空间的利用率。
2.2.3数据库物理设计
(1)数据库设计视图
设计相应的数据库,并录入相关的数据,如图4所示。
图4数据库设计图
(2)数据库表之间关联图
为各个表之间建立相应的关联,如图5所示。
图5 数据库表之间关联图
2.2.4连接数据库
#define Provider "Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;
Persist Security Info=False;Initial Catalog=Catering"
void ADOConn::OnInitADOConn()
{
HRESULT hr;
::CoInitialize(NULL);
try
{
hr = m_pCon.CreateInstance("ADODB.Connection");
if (SUCCEEDED(hr))
{
m_pCon->ConnectionTimeout = 3;
// m_pCon->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Catering.mdb","","",adMo deUnknown);
图6超市基本信息界面设计
②日常操作模块
进货开单界面设计
创建窗口对象,命名ID为IDD_KANDAN_C_DIALOG,在合适的位置添加五个文本框,五个编辑框,,按照自己所需相应的依次为每一个控件修改ID和caption属性,其设计如图7所示。
图7进货开单界面设计
③信息查询模块
出库开单界面设计
创建窗口对象,命名ID为IDD_CHUKU_E_DIALOG,在合适的位置添加五个文本框,五个编辑框,,按照自己所需相应的依次为每一个控件修改ID和caption属性,其
设计如图8所示。
图8出库开单界面设计
④系统管理模块
密码修改界面设计
创建窗口对象,命名ID为IDD_PWD_A_DIALOG,在合适的位置添加三个文本框,三个编辑框,两个命令按钮,按照自己所需相应的依次为每一个控件修改ID和caption 属性,其设计如图9所示。
图9出库开单界面设计
(2)菜单设计
添加菜单,并添加菜单项系统设置、基本资料、进货管理、销售管理、库存管理等子菜单项,如图10所示。