1、 数据库设计报告 题 目 商品订购管理系统 学生姓名 学 号 学 院 计算机与软件学院 专 业 指导教师 二一六 年 六 月 十 六 日14 / 16目 录1引言21.1 课题内容21.2 课题要求23系统总体设计33.1 系统模块设计33.1.1 查询模块设计33.1.2 添加模块设计43.1.3 删除模块设计53.1.4 修改模块设计53.2 数据库设计63.2.1数据库概念设计63.2.2数据库逻辑结构设计84系统实现94.1 查询模块实现94.2 添加模块实现114.3 删除模块实现124.4 修改模块实现134.5 主要界面实现14商品订购管理系统1引言 随着科学技术的不断发展,计算
2、机网络技术日渐成熟,其强大的功能 已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 商品订购现象在现实生活中十分常见,在各个领域中都存在着订购信息的流通。因此,商品订购系统是一种十分重要的系统。 基于商品订购系统的建立,数据库作用十分重要,在数据库中按照规定要求存放着系统所需的信息。系统主要运用与商品订购的管理,包括客户信息、商品信息、客户订购信息。管理员可以通过相应的模块,对信息进行增删改查。1.1 课题内容 设计一个商品订购管理系统,管理员通过系统能够对客户信息、商品信息、客户订购信息进行管理,实现基本的查询、添加、删除等功能。系统能够在不同界面浏览户信息、商品信息、
3、客户订购信息,并能够进行管理操作。1.2 课题要求 (1)客户信息(客户编号、客户姓名、出生日期、性别、所在省市、联系电话、是否VIP、备注)、商品信息(商品编号、商品类别、商品名称、单价、生产商、保质期、库存量、备注)、客户订购信息(客户编号、商品编号、订购时间、数量、需要日期、付款方式、送货方式)要单独保存; (2)系统功能模块应包括信息的增删改查。2系统需求分析2.1 功能需求(1) 查询功能:管理员通过该功能对所需要的信息进行查询,系统将查询到的信息显示到界面中。(2) 添加功能:通过该功能,管理员能够将新的信息添加到系统中,系统将数据加入数据库中并显示在界面中。(3) 删除功能:该功
4、能实现数据的删除。管理员通过输入相关信息,系统查询到该信息后删除该条信息及相关信息。(4) 修改功能:功能实现对数据的修改,管理员输入所需要修改的信息后,系统执行,数据库信息修改,显示在界面中。3系统总体设计3.1 系统模块设计 根据系统的需求分析对系统进行模块划分,客户信息、商品信息、客户订购信息三大模块。根据模块的划分,对系统进行总体设计,得到系统的模块划分总体功能图如图3.1所示。图3.1商品订购管理系统3.1.1 查询模块设计 该模块主要用于用数据的查询。系统通过比较所输入的信息,在数据库相关表中查询出信息并显示在界面中,若查询不到相关信息着系统跳出提示。具体流程图如图3.2所示。图3
5、2查询模块流程图3.1.2 添加模块设计 该模块主要用于用信息的添加。系统通过比较所输入的关键信息,确认数据库中无重复后,将新信息添加到数据库中,否则报错。具体流程图如图3.3所示。图3.3添加模块流程图3.1.3 删除模块设计 该模块主要用于用信息的删除。系统通过查询输入的信息,将信息从数据库中删除,若查询不到相关信息则报错。具体流程图如图3.4所示。图3.4删除模块流程图3.1.4 修改模块设计 该模块主要用于用信息的修改。系统通过查询输入的信息,将新的信息修改到所查询到的信息中,若查询不到相关信息则报错。具体流程图如图3.5所示。图3.5修改模块流程图3.2 数据库设计3.2.1数据库
6、概念设计通过对多商品订购管理系统功能及数据流图分析,设计如下的数据项和数据结构,并得到以下系统的实体联系图,即ER图:1 客户信息,包括的数据项有:客户编号、客户姓名、出生日期、性别、所在省市、联系电话、是否VIP、备注,客户实体图如图3.6所示。图3.6客户信息E-R图2 商品信息,包括的数据项有:商品编号、商品类别、商品名称、单价、生产商、保质期、库存量、备注,商品实体图如图3.7所示。图3.7商品信息E-R图3 客户订购信息,包括的数据项有:客户编号、商品编号、订购时间、数量、需要日期、付款方式、送货方式,客户订购实体图如图3.8所示。图3.8客户订购信息E-R图4 订购关系,包括的客户
7、信息、商品信息、客户订购信息,E-R图如图3.9所示。图3.9订购关系E-R图3.2.2数据库逻辑结构设计根据系统的总体设计、E-R图分析,可以得到系统优化后的逻辑模型:1. 客户信息,包括客户编号、客户姓名、出生日期、性别、所在省市、联系电话、是否VIP、备注,客户信息表如表3.1。表3.1客户信息表字段名描述类型长度是否空是否主键客户编号客户编号char8否是客户姓名客户姓名char20否否出生日期出生日期Varchar50是否性别性别char2是否所在省市所在省市Varchar50是否联系电话联系电话Varchar12是否是否VIP是否VIPVarchar8是否备注备注text是否2.
8、商品信息,包括商品编号、商品类别、商品名称、单价、生产商、保质期、库存量、备注,商品信息表如表3.2。表3.2商品信息表字段名描述类型长度是否空是否主键商品编号商品编号char10否是商品类别商品类别cahr20否否商品名称商品名称varchar50否否单价单价float是否生产商生产商varchar50是否保质期保质期varchar50是否库存量库存量int是否备注备注text是否3. 客户订购信息,包括户客户编号、商品编号、订购时间、数量、需要日期、付款方式、送货方式,客户订购信息表如表3.3。表3.3客户订购信息表字段名描述类型长度是否空是否主键客户编号客户编号char8否是商品编号商品
9、编号char8否是订购时间订购时间Varchar50否否数量数量varchar5否否需要日期需要日期varchar50是否付款方式付款方式varchar40是否送货方式送货方式varchar50是否4系统实现4.1 查询模块实现 商品订购系统的查询情况有两种,单表查询和多表查询。打开登录界面,在点击查询按钮时,首先必须确保所需信息不为空,否则,会弹提醒对话框。单表查询模块页面如图4.1所示;多表查询模块页面如图4.2所示。图4.1客户信息查询界面图4.2多表查询界面单表查询模块主要代码如下:string sjk = Server=TYYTOI6VZ4YGNQ5SQLEXPRESS;Databa
10、se=sjk;Trusted_Connection=SSPI; string sql = string.Format(select 客户编括号,客户名称,出生日期,性别,所在省市,联系电话,是否VIP,备注from KHB where 客户编号=0, textkhbh.Text); SqlConnection kh = new SqlConnection(sjk); kh.Open(); SqlCommand cmd = new SqlCommand(sql, kh); SqlDataReader sj = cmd.ExecuteReader(); sj.Read(); try string
11、s0 = sj.GetString(0); catch (Exception s0) MessageBox.Show(客户不存在, 提示?); xianshi(); return; listView1.Items.Clear(); ListViewItem it = new ListViewItem(); it.Text = sj.GetString(0); it.SubItems.Add(sj.GetString(1); it.SubItems.Add(sj.GetString(2); it.SubItems.Add(sj.GetString(3); it.SubItems.Add(sj.G
12、etString(4); it.SubItems.Add(sj.GetString(5); it.SubItems.Add(sj.GetString(6); it.SubItems.Add(sj.IsDBNull(7) ? null : sj.GetString(7); listView1.Items.Add(it);多表查询模块主要代码如下:string sql = string.Format(select a.客户编号,客户名称,b.商品编号,商品名称,商品类别,单价,数量,c.需要日期,送货方式 from KHB a,SPB b,SPDGB c where a.客户编号=c.客户编号 a
13、nd c.商品编号=b.商品编号? and a.客户编号=0,textkhbh.Text); SqlConnection khdg = new SqlConnection(sjk); SqlCommand cmd = new SqlCommand(sql, khdg); khdg.Open(); SqlDataReader sj = cmd.ExecuteReader(); while (sj.Read() ListViewItem it = new ListViewItem(); it.Text = sj.GetString(0); it.SubItems.Add(sj.GetString(
14、1); it.SubItems.Add(sj.GetString(2); it.SubItems.Add(sj.GetString(3); it.SubItems.Add(sj.GetString(4); it.SubItems.Add(sj.GetDouble(5).ToString(); it.SubItems.Add(sj.GetString(6); it.SubItems.Add(sj.GetString(7); it.SubItems.Add(sj.GetString(8); listView1.Items.Add(it); khdg.Close();4.2 添加模块实现 信息的添加
15、按照不同界面所需填写关键信息后对新消息进行添加。若关键信息已经在表中存在则报错。客户信息添加操作如图4.3所示。图4.3客户信息添加界面添加模块主要代码如下:if (textkhbh.Text = | textkhmc.Text = ) MessageBox.Show(必须填写客户编号、客户名称, 错误); return; string sql = string.Format(insert into KHB values(0,1,2,3,4,5,6,7), textkhbh.Text, textkhmc.Text, textcsrq.Text, textxb.Text, textszss.Te
16、xt, textlxdh.Text, textsf.Text, textbz.Text); SqlConnection kh = new SqlConnection(sjk); SqlCommand cmd = new SqlCommand(sql, kh); kh.Open(); try cmd.ExecuteNonQuery(); catch (Exception ex) MessageBox.Show(客户编号已存在, 提示?); return; kh.Close();4.3 删除模块实现 信息删除按照不同界面所需填写关键信息后,系统将将对应的信息进行删除操作。若关键信息不存在则报错。客
17、户信息删除操作如图4.4所示。图4.4客户信息删除界面删除模块主要代码如下:if (textkhbh.Text = ) MessageBox.Show(必须填写客户编号?,错误); return; string sql = string.Format(delete from KHB where 客户编号=0, textkhbh.Text); SqlConnection kh = new SqlConnection(sjk); kh.Open(); SqlCommand cmd = new SqlCommand(sql, kh); SqlDataReader sj = cmd.ExecuteRe
18、ader(); xianshi(); kh.Close();4.4 修改模块实现 信息修改按照不同界面所需填写关键信息后,系统在表中查询关键信息,若信息存在则对所需修改信息进行更改,若查询不到则报错。客户信息修改操作如图4.5所示。图4.5客户信息修改界面修改模块主要代码如下: if (textkhbh.Text = ) MessageBox.Show(必须填写客户编号, 错误); return; string khb = string.Format(select 客户编号 from KHB where 客户编号=0, textkhbh.Text); SqlConnection kh = ne
19、w SqlConnection(sjk); SqlCommand kh1 = new SqlCommand(khb, kh); kh.Open(); SqlDataReader sj2 = kh1.ExecuteReader(); sj2.Read(); try sj2.GetString(0); catch MessageBox.Show(不存在该用户, 提示); return; kh.Close(); if(textkhmc.Text!=) string sql = string.Format(update KHB set 客户名称=0 where 客户编号?=1, textkhmc.Text, textkhbh.Text); SqlCommand cmd = new SqlCommand(sql, kh); kh.Open(); cmd.ExecuteNonQuery(); kh.Close(); 4.5 主要界面实现 系统其他界面如图4.5、图4.6所示。图4.6商品信息界面图4.商品订购信息界面
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818