ImageVerifierCode 换一换
格式:DOCX , 页数:53 ,大小:218.89KB ,
资源ID:3529413      下载积分:12 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3529413.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(数据库销售订单管理系统课程设计.docx)为本站上传会员【w****g】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

数据库销售订单管理系统课程设计.docx

1、数据库销售订单管理系统课程设计目 录1引言11.1编写目的11.2参考资料12.需求规约22.1 业务描述22.2 需求分析23.数据库环境说明34.数据库的命名规则44.1 数据库对象命名规则44.2 数据项编码规则45.逻辑设计55.1 ER图55.2 关系模型56.物理设计66.1表汇总66.2 表1: Suppliers表(供应商表)66.3 表2:product表(产品表)76.4 表3:sp表(供应商产品供应表)76.5 表4: orders表(订单表)86.6 表5:po表(产品订购表)96.7 表6: employee表(雇员表)106.8 表7:customer表(客户表)1

2、16.9 视图的设计116.10 存储过程的设计126.11 触发器的设计296.12函数的设计307.安全性设计317.1防止用户直接操作数据库的方法317.2用户帐号密码的加密方法317.3角色与权限318.数据库管理与维护说明32总结33附录341引言1.1 编写目的本文档是销售订单数据库管理系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循。本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。设计该数据库的目的是为了能够模拟完成一次订单销售流程。1.2 参考资料表1 参考资料表资料名称作者文件编号

3、、版本王珊、萨师煊 5月第4版鲍威尔 3月第1版克罗恩科 6月第1版2.需求规约2.1 业务描述销售订单数据库管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的销售订单数据库管理系统,实现订单的下发,数据的查询删除和修改。2.2 需求分析本销售订单数据库管理系统的需求如下,首先在供应商表、供应表、产品表、订购表、订单表、客户表、雇员表的基本表上建立增、删、改、查的存储过程。以便以后再次用到的时候能够直接用存储过程而不用重复的写代码。第二在实验中间建立触发器,当订购产品的时候能够查询库

4、存,如果满足要求,那么就库存经过触发器实现库存的减少。第三在这次客场设计的基础上建立一些查询,比如说要求建立订单最多的客户信息的查询,平均工资的查询,库存最多的产品的查询。最后要求完成一次下订单的流程。另外,在一个完整的订单销售流程中,本数据库系统还提供查询某供应商供应的产品信息,查询某产品信息,查询某客户信息,查询某订单订购的产品的信息。对于客户而言,还提供了查询订单最多的客户的功能。例如当在订单的中只要知道订单的编号,就能够知道订单的产品的名字,产品的数量(产品的信息),雇员的信息,客户的信息。在订购的表中知道订单号就能够知道订单中产品的数量。能够修改数据库里面的数据,例如条件知道供应商编

5、号就能够对供应商的信息(编号,姓名,联系电话,地址等)进行修改,还能够对该供应商进行删除。知道客户的编号就能够对客户的数据 (编号,信息 姓名,联系电话等)进行修改,还能够对该用户进行删除。总的来说,本数据库系统能够达到模拟完成一次订单销售流程的要求。在本销售订单数据库管理系统中,有一些限制性条件,比如一个客户能够下多个订单,但一个订单只能由一个客户下,一个订单能够订购多种产品,每种产品可被不同订单订购等等,这些限制条件的加入能够使本数据库管理系统的功能更加完善,能够满足更高的要求。3.数据库环境说明表2 数据库环境说明表数据库实例数据库系统数据库部署环境数据库设计工具数据库存放位置说明销售订

6、单数据库管理系统Sql Server Windows 7Sql Server存放位置,绝对路径/相对路径用于订单销售管理4.数据库的命名规则4.1 数据库对象命名规则表3 数据库对象命名表数据库对象命名规则备注表S功能描述字符串例如:Suppliers供应商表视图view_功能描述字符串例如:view_Product产品视图触发器insert_功能描述字符串例如:insert_PO更改库存触发器存储过程Procedure_功能描述字符串例如:pro_sertSuppliers存储过程 4.2 数据项编码规则表4 数据项编码表数据项命名规则数据类型长度范围备注供应商编号两位整数序号(001000

7、)定长字符串32位无产品号两 位 整 数 序 号(001000)定长字符串32位无订单号两位整数序号(001000)定长字符串32位无雇员号两位整数序号(001000)定长字符串32位无客户号两位整数序号(001000)定长字符串32位无5.逻辑设计5.1 ER图图5.1E-R图5.2 关系模型供应商(供应商编号,名称,地址,联系电话)产品(产品编号,产品名称,产品类别,出厂价,价格,库存)供应(供应商编号,产品编号)订购(产品编号,订单编号,数量)客户(客户编号,姓名,地址,电话)订单(订单编号,日期,客户编号,雇员编号,产品种类)雇员(雇员编号,姓名,电话,工资)6.物理设计6.1表汇总表

8、5 汇总表表名功能说明表Suppliers供应商表,存储供应商的编号等信息表product产品表,存储产品的编号、数量等信息表Sp供应商产品供应表,存储供应商所供应的产品对应信息表orders订单表,存储订单的编号、日期等信息表po产品订购表,存储产品订购的对应信息表employee雇员表,存储雇员的编号等信息表customer客户表,存储客户的编号等信息6.2 表1: Suppliers表(供应商表)表名Suppliers(供应商表)数据库用户Sa主键S_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1S_numberc

9、har(32)NY高无主键/供应商编号2S_namechar(32)NN中无供应商名称3S_addresschar(32)NN中无供应商地址4S_telnumChar(32)NN高无供应商电话sql脚本-建立供应商表create table Suppliers-供应商表( S_number char(32) not null primary key, S_name char(32) not null, S_adress char(32) not null, S_telnub char(32) not null, );6.3 表2:product表(产品表)表名Product(产品表)数据库用户

10、sa主键P_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1P_numberchar(32)NY高无主键/产品编号2P_namechar(32)NY高无产品名称3P_priceintYN中无产品原价4P_expriceintYN中无产品出厂价5P_inventoryintYN中无产品库存量sql脚本-建立产品表create table product -产品表( p_number char(32) primary key not null, p_name char(32) not null, p_price int, -原

11、价 p_exprice int, -售价 p_inventory int ,-库存);6.4 表3:sp表(供应商产品供应表)表名sp(供应商产品供应表)数据库用户sa主键S_number,P_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1S_numberchar(32)NY高无主键/供应商号2P_numberchar(32)NY高无主键/产品编号sql脚本-建立供应商产品供应表create table sup-供应表( S_number char(32) not null, p_number char(32) not

12、null, primary key(S_number,p_number), foreign key(S_number)references Suppliers(S_number) on delete cascade on update cascade, foreign key(p_number)references product(p_number) on delete cascade on update cascade );6.5 表4: orders表(订单表)表名orders(订单表)数据库用户sa主键o_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N

13、唯一Y/N区别度默认值约束条件/说明1o_numberchar(32)NY高无主键/订单号2timesdateNN低无订单日期3e_numberchar(32)YN中无雇员号4c_numberchar(32)NN高无客户号5pnintYN中无产品种类数sql脚本-建立订单表create table orders -订单表( o_number char(32) not null primary key, empl_number char(32) not null, c_number char(32) not null, times date, pn int,-产品总数 foreign key(c

14、_number)references customer(c_number) on delete cascade on update cascade, foreign key(empl_number)references employee(empl_number) on delete cascade on update cascade );6.6 表5:po表(产品订购表)表名po(产品订购表)数据库用户sa主键p_number o_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1p_numberchar(32)NY高无主键

15、/产品号2o_numberchar(32)NY高无主键/订单号3quantintNN低无订购产品数量sql脚本-建立产品订购表create table po-订购表(p_number char(32),o_number char(32),quant int,primary key(p_number,o_number),foreign key(p_number)references product(p_number)on delete cascadeon update cascade,foreign key(o_number)references orders(o_number)on delet

16、e cascadeon update cascade, );6.7 表6: employee表(雇员表)表名employee(雇员表)数据库用户sa主键e_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1e_numberchar(32)NY高无主键/雇员号2e_namechar(32)YN中无雇员名称3e_telnumChar(32)YY高无雇员电话4e_realrealYN低无雇员薪资5e_addresChar(32)YN中无雇员的地址sql脚本-建立雇员表create table employee-雇员表( empl_

17、name char(32), empl_number char(32) primary key, empl_addres char(32), empl_telnumb char(32), empl_real int,);6.8 表7:customer表(客户表)表名customer(客户表)数据库用户sa主键c_number其它排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1c_numberchar(32)NY高无主键/客户表2c_namechar(32)YN中无客户名称3c_addresschar(32)YN中无客户地址4c_telnu

18、bchar(32)YY高无客户电话sql脚本-建立客户表create table customer-客户表( c_number char(32) primary key, c_name char(32), c_adress char(32), c_telnub char(32),);6.9 视图的设计1、建立一张客户信息的视图目的:屏蔽客户的地址信息。功能:能够向管理员提供简明,直接的客户信息展示。意义:有利于数据库安全的维护,防止任意修改数据库中的雇员信息。create view v_coustom(name,number)asselect c_name,c_numberfrom custo

19、mer;2、建立一张订单视图信息的视图目的:用来查询每个客户下的订单数和用来查找下订单数最多的客户。功能:能够向管理员提供简明,直接客户下订单的信息展示。意义:有利于数据的检索。create view view_ordersasselect c_number,count(o_number)总数from ordersgroup by c_number;6.10 存储过程的设计1、查询订单数量功能:查询订单的数量目的:存储查询订单数量的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchOrdersNum -查询订单的存

20、储过程asselect COUNT(*) 订单总数-查询订单数量from Orders;图1 订单总数查询图2、查询订单信息功能:查询订单信息目的:存储查询订单信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_select_orders-查询订单信息o_number char(32)asif not exists ( select * from orders where o_number=o_number ) print该订单不存在 elseselect orders.o_number,times,pn,c_name,e

21、mpl_namefrom orders ,customer,employee wherecustomer.c_number=orders.c_numberandorders.empl_number=employee.empl_number and orders.o_number=o_number图2 订单查询图 3、查询订单最多的客户信息功能:查询订单最多的客户信息目的:存储查询订单最多的客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create view view_orderasselect c_number,count(o_number)总数from order

22、sgroup by c_number;drop view view_orders;create procedure procedure_select_max_oders -查询订单数最多的客户asselect *from customerwhere c_number in ( select c_number from view_orders where 总数 in( select MAX(总数 ) from view_orders ) ); 图3 最多订单客户效果图4、查询客户信息功能:查询客户信息目的:存储查询客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤crea

23、te procedure procedure_select_coustom -查询客户信息name char(32)asif not exists ( select * from customer where c_name=name ) print该客户不存在 elseselect *from customer where c_name=name;图4 查询客户信息图5、查询雇员信息功能:查询雇员信息目的:存储查询雇员信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_select_empl -查询雇员信息name cha

24、r(32)asif not exists ( select * from employee where empl_name=name ) print该客户不存在 elseselect *from employee where empl_name=name;图5 查询雇员信息图6更新客户信息功能:更新客户信息目的:存储更新客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure update_coustome-更新客户信息 number char(32), tell char(32), address char(32) as if not exi

25、sts(select * from customer where c_number=number ) print你输入的客户不存在 else update customer set c_adress=address,c_telnub=tell where c_number=number ;图6 更新客户信息图7、查询产品信息功能:查询产品信息目的:存储查询产品信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_selec_produt pnumber char(32)-产品的查询as select *from produc

26、twhere p_number=pnumber;图7 查询产品图8、插入供应商信息功能:插入供应商信息目的:存储插入供应商信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure inser_suply-增加供应商 Snumber char(32), Sname char(32), Sadress char(32), Stelnub char(32)asif exists(select * from Suppliers where S_number=Snumber)print 该供应商已经存在,无需加入。else insertinto Suppli

27、ersvalues( Snumber, Sname, Sadress , Stelnub );图8 插入供应商图9、插入订单信息功能:插入订单信息目的:存储插入订单信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_insert_orders-插入订单信息o_number char(32),empl_number char(32),c_number char(32),time date,pn intasif exists ( select * from orders where o_number=o_number ) pr

28、int该订单已经存在,不需重复下订单 elseinsertinto orders values(o_number ,empl_number,c_number,time ,pn) 图9 插入订单图10、插入产品订购信息功能:插入产品订购信息目的:存储插入产品订购信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_oeder_pro -插入订单产品pnumber char(32),onumber char(32),quany intasif not exists ( select * from product where p_

29、number=pnumber ) print仓库里没有该产品,不予订购 elseif not exists ( select * from orders where o_number=onumber ) print你输入的订单号不对 elseif exists ( select * from po where p_number=pnumber and o_number =onumber ) print该产品已经在订单中 else if exists ( select * from product where p_inventoryquany and p_number=pnumber ) pri

30、nt该产品库存不足不予以订购 elseinsert into povalues(pnumber ,onumber,quany ); 图10 插入订购产品图11、插入产品信息功能:插入产品信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_insert_pro-插入产品number char(32),name char(32),price int,exprice int,inventory intasif exists(select * from product where p_number=number)up

31、date productset p_inventory=p_inventory+inventoryelseinsert into product values( number, name, price, exprice, inventory )图 11 插入产品图12、更新供应商的信息功能:更新供应商的信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_update_suply-更新供应商信息 snumber char(32), stell char(32), saddress char(32) as if

32、not exists( select * from Suppliers where S_number=snumber ) print你输入的供应商不存在 else update Suppliers set S_adress=saddress,S_telnub=stell where S_number =snumber; exec procedure_update_suply 001,大连;图12 更新供应商信息图13、删除供应商功能:删除供应商的信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤 create procedure procedure_delet

33、_supply-删除供应商信息 number char(32) as if not exists(select * from Suppliers where S_number=number ) print你输入的供应商不存在 else delete from Suppliers where S_number =number ; exec procedure_delet_supply 111;图13 删除供应商图14、最多的库存产品查询功能:最多的库存产品查询目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤图14 库存量最大产品查询图15、供应商供应的产品查询功能

34、:供应商供应的产品查询目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_selet_pro -查询商供应的产品snumber char(32)asif not exists(select s_number from Suppliers where S_number=snumber )print该供应商不存在elseselect S_name,p_name from Suppliers,sup,productwhere Suppliers.S_number=sup.S_number and Suppliers.S

35、_number=snumber and sup.p_number=product.p_numberexec procedure_selet_pro 011;图16 查询供应商供应的产品图16、更新客户的信息功能:更新客户信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤 create procedure procedure_update_coustome-更新客户信息 number char(32), tell char(32), address char(32) as if not exists(select * from customer where c_

36、number=number ) print你输入的客户不存在 else update customer set c_adress=address,c_telnub=tell where c_number=number ; exec procedure_update_coustome 01,广州图16 更新客户信息图17、删除客户信息功能:删除客户信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_delet_coustome-删除客户信息 number char(32) as if not exists(se

37、lect * from customer where c_number=number ) print你输入的客户不存在 else delete from customer where c_number=number ; exec procedure_delet_coustome 05 图17 删除客户信息图18、更新雇员信息功能:更新雇员信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_update_emp-更新雇员信息 enumber char(32), etell char(32), eaddress char(32), e_real int as if not exists(select * from employee where empl_number=enumber ) print你输入的雇员不存在 else update employee set empl_addres=eaddress,empl_telnumb=etell,empl_real=e_real wher

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服