数据库设计说明书

上传人:每**** 文档编号:47057541 上传时间:2021-12-16 格式:DOC 页数:36 大小:487KB
返回 下载 相关 举报
数据库设计说明书_第1页
第1页 / 共36页
数据库设计说明书_第2页
第2页 / 共36页
数据库设计说明书_第3页
第3页 / 共36页
点击查看更多>>
资源描述
请预览后下载!长 沙 学 院课程设计说明书题目工厂数据库管理系统系(部)数学与计算机科学专业(班级)软件 2 班姓名肖瑶学号2013022236指导教师潘怡起止日期20156.152015626请预览后下载!课程设计任务书课程名称:课程名称:数据库系统原理课程设计设计题目:设计题目:工厂数据库管理系统、销售订单数据库管理系统、汽车租赁管理系统、火车票预订管理系统(任选一题) 。已知技术参数和设计要求:已知技术参数和设计要求:题目:工厂数据库管理系统1、某工厂需建立一个管理数据库存储以下信息:工厂包括厂名和厂长名。一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和电话。一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种。一个车间生产多种产品,产品有产品号、产品名称和价格。一个车间生产多种零件,一个零件也可能为多个车间制造。零件有零件号、重量和价格。一个产品由多种零件组成,一种零件也可装配出多种产品。产品与零件均存入仓库中。厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。2、系统功能的基本要求:按照一定条件查询、统计工人和产品等基本信息,能模拟工厂生产过程中对原材料(零件) 、产品检测、库存环节的管理。各阶段具体要求:各阶段具体要求:1、需求分析阶段定义数据项的含义和取值定义目标系统的数据流2、概念结构设计阶段画出实体模型 E-R 图3、逻辑结构设计阶段将实体模型转化为关系模型给出每个关系的主关键字和函数依赖集分析你所设计的关系数据库模式是否属于 3NF4、物理设计阶段确定所有字段的名称、类型、宽度、小数位数及完整性约束 确定数据库及表的名称及其组成 确定索引文件和索引关键字请预览后下载!5、数据库安全及维护设计阶段设计一个适合的数据库安全策略(用户身份认证、访问权限、视图)为了实现复杂的数据完整性约束,设计适当的触发器设计一个适合的数据库备份策略6、实施阶段要求所有操作必须在查询分析器中用 SQL 语句或系统存储过程完成。设计工作量:设计工作量:(1)软件设计:完成问题陈述中所提到的所有需求功能。(2)论文:要求撰写不少于 3000 个文字的文档,详细说明各阶段具体要求。工作计划:工作计划:安排两周时间进行课程设计,软件开发步骤如下,第一周完成 14,第二周完成 58,论文同步进行;1) 选定题目2) 需求分析3) 概念结构设计4) 逻辑结构设计5) 物理设计6) 数据库安全及维护设计7) 数据库上机实现8) 答辩计划时间指导老师班级1516 周杨刚13 软件 1 班1516 周潘怡13 软件 2 班1516 周何可可13 软件 3 班1516 周刘刚钦13 软件 4 班注意事项注意事项提交文档提交文档长沙学院课程设计任务书(每学生 1 份)长沙学院课程设计论文(每学生 1 份)长沙学院课程设计鉴定表(每学生 1 份)指导教师签名: 日期: 教研室主任签名: 日期:请预览后下载!系主任签名: 日期:长沙学院课程设计鉴定表姓名肖瑶学号2013022236专业软件工程班级2 班设计题目工厂数据库管理系统指导教师潘怡指导教师意见:评定等级: 教师签名: 日期: 答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀” 、 “良好” 、 “及格” 、 “不及格”四类;请预览后下载!目 录1、需求分析阶段、需求分析阶段 .22、概念结构设计阶段、概念结构设计阶段 .23、逻辑结构设计阶段、逻辑结构设计阶段 .24、物理设计阶段、物理设计阶段 .25、数据库安全及维护设计阶段、数据库安全及维护设计阶段 .26、实施阶段、实施阶段 .3一、引言一、引言 .71.1 编写目的.71.2 参考资料.7二、需求规约二、需求规约 .72.1 业务描述.72.2 需求分析.7三、数据库环境说明三、数据库环境说明 .8四、数据库的命名规则四、数据库的命名规则 .94.1 数据库对象命名规则.94.2 数据项编码规则.9五、逻辑设计五、逻辑设计 .105.1 实体关系 E-R 图.105.2 创建数据库系统的关系模型.10六、物理设计六、物理设计 .136.1 表汇总.136.2 表.146.3 存储过程、函数及触发器的设计.19七、总结七、总结 .26八、附件八、附件.27请预览后下载!一、引言一、引言1.1 编写目的编写目的根据工人数据库管理系统建立一个数据库存储信息,建立实体并分析实体间的关系通过 SQL 语言来实现此管理系统的运用,模拟工厂生产过程中对零件、产品检测、库存环节的管理。从而便于用户详细了解整个工厂数据库管理系统。 1.2 参考资料参考资料 资料名称作者文件编号、版本数据库系统概论王珊、萨师煊2006 年 5 月第 4 版二、需求规约二、需求规约2.12.1 业务描述业务描述根据工人管理系统模拟生产过程,实现对零件生产、产品检测、库存的管理。2.22.2 需求分析需求分析2.2.12.2.1 数据结构及数据关系数据结构及数据关系1.数据结构:工厂 (厂名、厂长)仓库 (仓库号、仓库主任姓名、电话)车间 (车间号、车间主任姓名、地址、电话)工人 (工号、姓名、年龄、性别、工种)产品 (产品号、产品名称、价格、数量)零件 (零件号、重量、价格、数量)2.数据关系:车间、工人与产品、零件有生产关系,工厂与车间、工厂与仓库、车间与工人有包含关系;产品与零件有组成关系,产品、零件与仓库有库存关系。工厂与车间为一对多关系, 车间与工人为一对多关系, 车间与产品为一对多关系,仓库与产品为一对多关系,仓库与零件为一对多关系, 车间与零件为请预览后下载!多对多关系请预览后下载!, 产品和零件为多对多关系, 工厂与仓库为一对多关系。2.2.22.2.2 功能分析功能分析1.要求能够插入,管理并更新此系统的车间数据、仓库数据、工人信息、产品信息及零件数据。生产产品用例规约如表 2.1 所示。用例名称:添加产品信息角色:工厂管理人员用例说明:工厂生产新的产品前置条件:进入软件功能选择页面基本事件流:1. 点击添加产品2. 输入产品信息(产品号、产品名称、价格、数量)3. 输入组成该产品的零件信息(零件号、重量、价格、数量)其他事件流:该工厂不能生产其中一种零件,生产产品失败。后置条件:产品信息添加成功,工厂开始生产该产品表 2.1 产品生产用例规约2.要求具有完整的查询功能。例如通过仓库号能查询到仓库主任姓名、联系电话等信息;通过车间号能查询到车间主任姓名、地址、联系电话通过产品号能查询到产品名称,产品价格等等;职工信息查询用例规约如表 2.2 所示。用例名称:查询职工信息角色:工厂管理人员用例说明:主管调查人员劳动价值前置条件:进入软件功能选择页面基本事件流:1.选择要查询职工的职工号2.点击查询其他事件流:如果没有该职工号,则用况终止后置条件:显示该职工的所有信息(姓名,年龄,性别,工种)表 2.2 职工信息查询用例规约三、数据库环境说明三、数据库环境说明数据库实例数据库系统数据库部署环境数据库设计工具数据库存放位置说明工人数据库管理系统SQL server2008硬件:2GB内存:512M 以上网络环境:windows xpMicrosoft Office Visio 2003 与 SQL server 2008D 盘根目录查询、统计工人和产品基本信息,模拟工厂生产过程请预览后下载!四、数据库的命名规则四、数据库的命名规则4.14.1 数据库对象命名规则数据库对象命名规则数据库对象命名规则备注表功能描述字符串例如: factory 工厂表索引index_功能描述字符串例如:index_factory 工厂索引触发器trigger_功能描述字符串例如: trigger_factory 工厂触发器存储过程procedure_功能描述字符串例如: procedure_factory 工厂存储过程4.24.2 数据项编码规则数据项编码规则数据项数据类型长度范围备注厂名char20Fname厂长名char20FMname产品名char20Proname车间号char10Wno仓库号char10Sno职工号char10Workno产品号char10Prono零件号char10Pno电话char11Phone工种char20Worktype零件重量IntPweight零件价格IntPmoney零件数量IntPquantity请预览后下载!五、逻辑设计五、逻辑设计5.15.1 实体关系实体关系 E-RE-R 图图产品零件仓库工人工厂车间电话价格重量零件号价格名称产品号工号工种性别姓名年龄厂名厂长名电话主任编号仓库号车间号主任编号地址存放包含组成生产包含生产存放包含111111nnnmnnmnnn请预览后下载!5.25.2 创建数据库系统的关系模型创建数据库系统的关系模型1.工厂表数据信息Factory数据项名含义数据类型约束是否为空Fname厂名Char(20)Primary KeyNot NULLFMname厂长名Char(20)2.工人表数据信息Worker数据项名含义数据类型约束是否为空Wono职工号char(10)Primary keyNOT NULLWoname姓名char(20)Woage年龄smallintWosex性别char(10)Wotype工种char(20)Wno车间号char(10)Foreign key3.车间表数据信息Workhome数据项名含义数据类型约束是否为空Wno车间号char(10)Primary keyNOT NULLWMno车间主任编号char(20)Wadd地址char(20)Wphone电话char(11)Fname厂名char(20)Foreign key4.产品表数据信息Product 数据项名含义数据类型约束是否为空Prno产品号char(10)Primary keyNOT NULLPrname产品名称char(20)Prmoney产品价格intPrquantity产品数量intSno仓库号char(10)Foreign keyWno车间号char(10)Foreign key请预览后下载!5.零件表数据信息Part数据项名含义数据类型约束是否为空Pano零件号char(10)Primary keyNOT NULLPaweight零件重量intPamoney零件价格intPaquantity零件数量intSno仓库号char(10)Foreign key6.仓库表数据信息Storage 数据项名含义数据类型约束是否为空Sno仓库号char(10)Primary keyNOT NULLSMno仓库主任编号char(20)Sphone电话char(11)7.生产表数据信息Make 数据项名含义数据类型约束是否为空Wno车间号char(10)Primary keyNOT NULLPno零件号char(20)Primary keyNOT NULLMtime生产日期varchar(20)Mquantity零件生产数量int8.组成表数据信息Compose数据项名含义数据类型约束是否为空Prno产品号char(10)Primary keyNOT NULLPano零件号char(10)Primary keyNOT NULLCquantity组装数int请预览后下载!9.产品存储表数据信息Store1数据项名含义数据类型约束是否为空Sno仓库号char(10)Primary keyNOT NULLPrno产品号char(10)Primary keyNOT NULLSquantity1产品库存量int10.零件存储表数据信息Store2数据项名含义数据类型约束是否为空Sno仓库号char(10)Primary keyNOT NULLPano零件号char(20)Primary keyNOT NULLSquantity2零件库存量int六、物理设计六、物理设计6.16.1 表汇总表汇总表名功能说明表 Part查询,插入,索引,存储过程表 Product查询,插入,修改,索引,存储过程表 Storage查询,更新,删除,存储过程请预览后下载!6.26.2 表表1.工厂表表名Factory数据库用户Work主键Fno序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1FnameChar(20)NPrimary key2FMnameChar(200sql 脚本Create table Factory(Fname char(20) Primary Key,FMname char(20)备注工厂与车间一对多2.工人表表名Worker数据库用户work主键Wono序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Wonochar(10)NPrimary key2Wonamechar(20)3Woagesmallint4Wotypechar(20)5Wnochar(10)NForeign keysql 脚本Create table Worker(wono char(10)Primary Key,Woname char(20),Woage smallint,wosex char(2),Wotapy char(20),Wno char(10),foreign key(Wno)references Workhome(Wno) )备注车间与工人一对多请预览后下载!3.车间表表名Workhome数据库用户work主键Wno序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Wnochar(10)NPrimary key2WMnamechar(20)3Waddchar(20)4WphoneChar(11)5FnameChar(20)NForeign keysql 脚本Create table Workhome( Wno char(10)primary Key, WMno char(20), Wadd char(20), Wphone char(11), Fname char(20), Foreign Key(Fname)references Factory(Fname)备注工厂与车间一对多4.产品表表名Product数据库用户work主键Prno序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Prnochar(10)NPrimary key2Prnamechar(20)3Prmoneyint4Prquantityint5Wnochar(10)NForeign key请预览后下载!sql 脚本Create table Product(Prno char(10)Primary Key,Prname char(20),Prmoney int,Prquantity int,Sno char(10),Wno char(10),foreign key(Wno)references Workhome(Wno) )备注车间与产品一对多,仓库与产品一对多5.零件表表名Part数据库用户work主键Pano序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Panochar(10)NPrimary key2PaweightVarchar(20)3Pamoneyint4Paquantityint5Snochar(10)NForeign keysql 脚本Create table Part( Pano char(10)primary Key,Paweight varchar(20),Pamoney int,Paquantity int,Sno char(10),Foreign Key(Sno)references Storage(Sno) )备注仓库与零件一对多6.生产表表名Make数据库用户work主键Wno ,Prno序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Wnochar(10)NPrimary key2Prnochar(10)NPrimary key请预览后下载!3Mtimevarchar(20)4Mquantityintsql 脚本 Create table Make ( Wno char(10), Pano char(10), Mtime varchar(20), Mquantity int, Primary Key(Wno,Pano), Foreign Key(Wno)references Workhome(Wno), Foreign Key(Pano)references Part(Pano) )备注车间与零件多对多7.组成表表名Compose数据库用户work主键Prno,Pano序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Prnochar(10)NPrimary key2Panochar(10)NPrimary key3Cquantityintsql 脚本Create table Compose (Prno char(10),Pano char(10),Cquantity int,Primary Key(Prno,Pano),Foreign Key(Prno)references Product(Prno),Foreign Key(Pano)references Part(Pano) )备注产品和零件多对多8.仓库表表名Storage数据库用户work主键Sno序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Snochar(10)NPrimary key2SMnochar(20)请预览后下载!3Sphonechar(11)sql脚本Create table Storage(Sno char(10)primary Key,SMno char(20),Sphone char(11) )备注工厂与仓库一对多请预览后下载!9.产品存储表表名Store1数据库用户work主键Sno、Prno序号字段名称数据类型(精度范围)允许为空 Y/N唯一Y/N区别度默认值约束条件/说明1Snochar(10)NPrimary key2Pronochar(10)NPrimary key3Squantity1intsql 脚本Create table Store1(Sno char(10),Prno char(10),Squantity1 int,Primary Key(sno,Prno),Foreign Key(sno)references Storage(sno),Foreign Key(Prno)references Product(Prno) )备注仓库与产品一对多10.零件存储表表名Store2数据库用户work主键Sno、Pano序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Snochar(10)NPrimary key2Panochar(10)NPrimary key3Squantity2intsql脚本Create table Store2(Sno char(10),Pano char(10),Squantity2 int,Primary Key(sno,Pano),Foreign Key(sno)references Storage(sno),Foreign Key(Pano)references Part(Pano) )备注仓库与零件一对多请预览后下载!6.36.3 存储过程、函数及触发器的设计存储过程、函数及触发器的设计6.3.16.3.1 存储过程设计存储过程设计1.工厂表存储过程及数据插入,效果图如图 6.1 所示Create procedure C_Factory Fname char(20), FMname char(20) as insert into Factory values(Fname,FMname); - exec C_Factory环球鞋业有限公司,肖瑶图6.12.车间表存储过程及数据插入,效果图如图 6.2 所示create procedure C_WorkhomeWno char(10),WMno char(20),Wadd char(20),Wphone char(11),Fname char(20)asinsert into Workhome values(Wno,WMno,Wadd,Wphone,Fname)-exec C_Workhome 01,001,洪山路月湖栋,15507485174,环球鞋业有限公司exec C_Workhome 02,002,洪山路月湖栋,15108245415,环球鞋业有限公司exec C_Workhome 03,003,洪山路月湖栋,13507451921,环球鞋业有限公司图6.2请预览后下载!3.职工表存储过程及数据插入,效果图如图 6.3 所示create proc C_WorkerWono char(10),Woname char(20),Woage smallint,Wosex char(2),Wotype char(20),Wno char(10)asinsert into worker values(Wono,Woname,Woage,Wosex,Wotype,Wno)-exec C_Worker001,肖俊俊,19,男,检查员,01exec C_Worker002,龙毛毛,20,男,生产员,01exec C_Worker003,周勤勤,19,男,安保,01exec C_Worker004,黄雷蕾,19,女,保洁员,01exec C_Worker005,许小芬,19,男,检查员,02exec C_Worker006,叶鹏,20,男,生产员,02exec C_Worker007,李强,19,男,安保,02exec C_Worker008,罗星,19,女,保洁员,02exec C_Worker009,李俊俊,19,男,检查员,03exec C_Worker010,李小为,20,男,生产员,03exec C_Worker011,扶小冉,19,男,安保,03exec C_Worker012,明小顺,21,男,保洁员,03图 6.34.仓库表存储过程及数据插入,效果图如图 6.4 所示create proc C_StorageSno char(10),SMno char(20),Sphone char(11)as请预览后下载!insert into Storage values(Sno,SMno,Sphone)-exec C_Storage01,001,7941211exec C_Storage02,002,7412255exec C_Storage03,003,4566181图6.45.产品表存储过程及数据插入,效果图如图 6.5 所示create proc C_ProductPrno char(10),Prname char(20),Prmoney int,Prquantity int,Sno char(10),Wno char(10)asinsert into Product values(Prno,Prname,Prmoney,Prquantity,Sno,Wno)-exec C_Product01,耐克产品,800,611,01,01exec C_Product02,阿迪产品,751,721,02,02exec C_Product03,彪马产品,622,611,03,03insert into product(Prno,Prname,Prmoney,Prquantity,Sno,Wno)values(04,特步产品,211,810,02,02)图6.56.零件存储过程及数据插入,效果图如图 6.6 所示Create proc C_PartPano char(10),请预览后下载!Paweight varchar(20),Pamoney int,Paquantity int,Sno char(10)asinsert into Part values(Pano,Paweight,Pamoney,Paquantity,Sno)-exec C_Part01,0.2,13,4000,01exec C_Part02,0.1,60,6150,02exec C_Part03,0.1,80,3618,03exec C_Part04,0.1,80,3618,03delete from Part where Pano=04图 6.67.生产表存储过程及数据插入,效果图如图 6.7 所示Create Proc C_MakeWno char(10),Pano char(10),Mtime varchar(20),Mquantity intas insert into Make values(Wno,Pano,Mtime,Mquantity)-exec C_Make01,01,2015.6.22 08:11:01,120exec C_Make02,02,2015.6.21 09:23:16,160exec C_Make03,03,2015.6.21 11:06:01,210图6.78.组成表存储过程及数据插入,效果图如图 6.8 所示Create Proc C_Compose请预览后下载!Prno char(10),Pano char(10),Cquantity intasinsert into Compose values(Prno,Pano,Cquantity)-exec C_Compose01,01,10exec C_Compose01,02,10exec C_Compose01,03,10exec C_Compose02,01,29exec C_Compose02,02,29exec C_Compose02,03,29exec C_Compose03,01,38exec C_Compose03,02,38exec C_Compose03,03,38图6.89.产品存储表存储过程及数据插入,效果图如图 6.9 所示Create proc C_Store1Sno char(10),Prno char(10),Stquantity1 intasinsert into Store1 values(Sno,Prno,Stquantity1)-exec C_Store101,01,155exec C_Store102,02,211exec C_Store103,03,284请预览后下载!图6.910.零件存储表存储过程及数据插入,效果图如图 6.10 所示Create proc C_Store2Sno char(10),Pano char(10),Stquantity2 intasinsert into Store2 values(Sno,Pano,Stquantity2)-exec C_Store201,01,300exec C_Store202,02,416exec C_Store203,03,312图 6.106.3.26.3.2 触发器设计触发器设计1.产品数量更新,效果图如 3.11 所示create trigger T_Producton Product for updateasif UPDATE(Prquantity)begindeclare no int, Bo intselect Bo=Prquantity,no=Prno from insertedupdate Store1 set Squantity1=Squantity1+Bowhere Prno=noendselect Sno as 仓库号,Prno as 产品号,Squantity1 as 产品存储数 from Store1请预览后下载!图 3.112. 更新产品价格,效果图如图3.12所示Create trigger T_Product_moneyon Product for updateasif UPDATE(Prmoney)beginselect inserted.Prno,deleted.Prmoney as 原价,inserted.Prmoney as 现价from deleted,inserted where deleted.Prno=inserted.Prnoend图 6.123. 更新零件价格,效果图如图3.13所示Create trigger T_Part_moneyon Part for updateasif UPDATE(Pamoney)beginselect inserted.Pano,deleted.Pamoney as 原价,inserted.Pamoney as 现价from deleted,inserted where deleted.Pano=inserted.Panoend图 6.13请预览后下载!3. 更新职工职位,效果图如图3.14所示Create trigger T_workeron Worker for updateasif UPDATE(Wotapy)beginselect inserted.Wono,deleted.Wotapy as 原职位,inserted.Wotapy as 现职位from deleted,inserted where deleted.Wono=inserted.Wonoend图 6.144.检查零件重量是否合格,效果图如图 6.15 所示Create trigger T_Parton Part for updateasif UPDATE(Paweight)beginselect inserted.Pano,deleted.Paweight as 重量,inserted.paweight as 检测from deleted,inserted where deleted.Pano=inserted.Panoend图 6.15请预览后下载!七、总结七、总结这次课程设计加深了我对数据库系统概论相关知识和 SQL SERVER 相关功能的理解。虽然课程设计已经结束了。回想着这个学期自己所学的数据库系统概论 、以及这次做的课程设计,感触蛮深的。首先,在这次课程设计中,我对建立基本表、视图、索引等,都比以前更加的熟练。并在解决遇到的各种问题的过程中,学到了很多新的知识。比如在删除和更新数据时,由于外键约束的存在,经常会出现错误,这就要注意各个表导入的顺序问题。一般是先导入主键表,后导入外键表,这样可以避免很多的错误。另外我还充分体会了从事软件开发工作需要特别严谨认真的态度和作风,一点都马虎不得。每一个细微的细节都必须十分的注意,如果不认真思考决策,就会出现或大或小的错误,如果早期的错误隐藏下来,对后面的工作影响就会很大,甚至有时要推倒很多前面做的工作重来。有时候,我自己觉得我写的语句正确,但是就是编译通不过,在查找错误的过程中,面临着否认自己的过程,非常的痛苦,而且由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢。另外比如功能过少等问题,我会在工作的使用过程中,根据工作的具体要求不断的修改,完善,争取使该系统慢慢趋向完美。请预览后下载!八、八、附件附件Create table Factory( Fname char(20) Primary Key, FMname char(20) )Create table Workhome( Wno char(10)primary Key, WMno char(20), Wadd char(20), Wphone char(11), Fname char(20), Foreign Key(Fname)references Factory(Fname)Create table Worker(wono char(10)Primary Key,Woname char(20),Woage smallint,wosex char(2),Wotapy char(20),Wno char(10),foreign key(Wno)references Workhome(Wno) )Create table Storage(Sno char(10)primary Key,SMno char(20),Sphone char(11) ) Create table Product(Prno char(10)Primary Key,Prname char(20),请预览后下载!Prmoney int,Prquantity int,Sno char(10),Wno char(10),foreign key(Wno)references Workhome(Wno) ) Create table Part( Pano char(10)primary Key,Paweight varchar(20),Pamoney int,Paquantity int,Sno char(10),Foreign Key(Sno)references Storage(Sno) ) Create table Make ( Wno char(10), Pano char(10), Mtime varchar(20), Mquantity int, Primary Key(Wno,Pano), Foreign Key(Wno)references Workhome(Wno), Foreign Key(Pano)references Part(Pano) ) Create table Compose (Prno char(10),Pano char(10),Cquantity int,Primary Key(Prno,Pano),Foreign Key(Prno)references Product(Prno),Foreign Key(Pano)references Part(Pano) ) Create table Store1(Sno char(10),请预览后下载!Prno char(10),Squantity1 int,Primary Key(sno,Prno),Foreign Key(sno)references Storage(sno),Foreign Key(Prno)references Product(Prno) ) Create table Store2(Sno char(10),Pano char(10),Squantity2 int,Primary Key(sno,Pano),Foreign Key(sno)references Storage(sno),Foreign Key(Pano)references Part(Pano) ) Create procedure C_Factory Fname char(20), FMname char(20) as insert into Factory values(Fname,FMname); - exec C_Factory环球鞋业有限公司,肖瑶select *from Factorycreate procedure C_WorkhomeWno char(10),WMno char(20),Wadd char(20),Wphone char(11),Fname char(20)asinsert into Workhome values(Wno,WMno,Wadd,Wphone,Fname)-exec C_Workhome 01,001,洪山路月湖栋,15507485174,环球鞋业有限公司exec C_Workhome 02,002,洪山路月湖栋,15108245415,环球鞋业有限公司exec C_Workhome 03,003,洪山路月湖栋,13507451921,环球鞋业有限公司create proc C_Worker请预览后下载!Wono char(10),Woname char(20),Woage smallint,Wosex char(2),Wotype char(20),Wno char(10)asinsert into worker values(Wono,Woname,Woage,Wosex,Wotype,Wno)-exec C_Worker001,肖俊俊,19,男,检查员,01exec C_Worker002,龙毛毛,20,男,生产员,01exec C_Worker003,周勤勤,19,男,安保,01exec C_Worker004,黄雷蕾,19,女,保洁员,01exec C_Worker005,许小芬,19,男,检查员,02exec C_Worker006,叶鹏,20,男,生产员,02exec C_Worker007,李强,19,男,安保,02exec C_Worker008,罗星,19,女,保洁员,02exec C_Worker009,李俊俊,19,男,检查员,03exec C_Worker010,李小为,20,男,生产员,03exec C_Worker011,扶小冉,19,男,安保,03exec C_Worker012,明小顺,21,男,保洁员,03select *from Workercreate proc C_StorageSno char(10),SMno char(20),Sphone char(11)asinsert into Storage values(Sno,SMno,Sphone)-exec C_Storage01,001,7941211exec C_Storage02,002,7412255exec C_Storage03,003,4566181select *from Storagecreate proc C_ProductPrno char(10),Prname char(20),Prmoney int,Prquantity int,Sno char(10),Wno char(10)asinsert into Product values(Prno,Prname,Prmoney,Prquantity,Sno,Wno)-请预览后下载!exec C_Product01,耐克产品,800,611,01,01exec C_Product02,阿迪产品,751,721,02,02exec C_Product03,彪马产品,622,611,03,03insert into product(Prno,Prname,Prmoney,Prquantity,Sno,Wno)values(04,特步产品,211,810,02,02)select *from ProductCreate proc C_PartPano char(10),Paweight varchar(20),Pamoney int,Paquantity int,Sno char(10)asinsert into Part values(Pano,Paweight,Pamoney,Paquantity,Sno)-exec C_Part01,0.2,13,4000,01exec C_Part02,0.1,60,6150,02exec C_Part03,0.1,80,3618,03exec C_Part04,0.1,80,3618,03delete from Part where Pano=04select *from PartCreate Proc C_MakeWno char(10),Pano char(10),Mtime varchar(20),Mquantity intas insert into Make values(Wno,Pano,Mtime,Mquantity)-exec C_Make01,01,2015.6.22 08:11:01,120exec C_Make02,02,2015.6.21 09:23:16,160exec C_Make03,03,2015.6.21 11:06:01,210select *from MakeCreate Proc C_ComposePrno char(10),Pano char(10),Cquantity intasinsert into Compose values(Prno,Pano,Cquantity)-exec C_Compose01,01,10exec C_Compose01,02,10请预览后下载!exec C_Compose01,03,10exec C_Compose02,01,29exec C_Compose02,02,29exec C_Compose02,03,29exec C_Compose03,01,38exec C_Compose03,02,38exec C_Compose03,03,38select *from ComposeCreate proc C_Store1Sno char(10),Prno char(10),Squantity1 intasinsert into Store1 values(Sno,Prno,Squantity1)-exec C_Store101,01,155exec C_Store102,02,211exec C_Store103,03,284Create proc C_Store2Sno char(10),Pano char(10),Squantity2 intasinsert into Store2 values(Sno,Pano,Squantity2)-exec C_Store201,01,300exec C_Store202,02,416exec C_Store203,03,312select *from Store2create index Factory_index on Factory(Fname)create index Workhome_index on Workhome(Wno)create index Worker_index on Worker(Wono)create index Product_index on Product(Prno)create index Part_index on Part(Pano)create index Storage_index on Storage(Sno)Create trigger T_Parton Part for updateasif UPDATE(Paweight)请预览后下载!beginselect inserted.Pano,deleted.Paweight as 重量,inserted.paweight as 检测from deleted,inserted where deleted.Pano=inserted.Panoend-update Partset Paweight=不合格where Paweight0.1update Partset Paweight=0.02 where Pano=01update Partset Paweight=0.01 where Pano=02update Partset Paweight=0.2 where Pano=03DROP trigger T_Part Create trigger T_Product_moneyon Product for updateasif UPDATE(Prmoney)beginselect inserted.Prno,deleted.Prmoney as 原价,inserted.Prmoney as 现价from deleted,inserted where deleted.Prno=inserted.Prnoend-update Productset Prmoney=820where Prno=01Create trigger T_Part_moneyon Part for updateasif UPDATE(Pamoney)beginselect inserted.Pano,deleted.Pamoney as 原价,inserted.Pamoney as 现价from deleted,inserted where deleted.Pano=inserted.Panoend-update Partset Pamoney=22where Pano=01请预览后下载!Create trigger T_workeron Worker for updateasif UPDATE(Wotapy)beginselect inserted.Wono,deleted.Wotapy as 原职位,inserted.Wotapy as 现职位from deleted,inserted where deleted.Wono=inserted.Wonoend-update Workerset Wotapy=安保where wono=001create trigger T_Producton Product for updateasif UPDATE(Prquantity)begindeclare no int, Bo intselect Bo=Prquantity,no=Prno from insertedupdate Store1 set Squantity1=Squantity1+Bowhere Prno=noendselect Sno as 仓库号,Prno as 产品号,Squantity1 as 产品存储数 from Store1-drop trigger T_Productupdate Product set Prquantity=60 where Prno=01 (注:可编辑下载,若有不当之处,请指正,谢谢!)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!