《零件加工厂管理系统的数据库设计(共12页).doc》由会员分享,可在线阅读,更多相关《零件加工厂管理系统的数据库设计(共12页).doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上 零件加工厂管理的数据库设计班级:09级化工学院过程装备与控制工程甲班李苍亮: 一 需求分析1.查询所有部门的信息部门编号,部门名称,部门电话2.查询所有职工的个人信息领导,工号,姓名,年龄,职称3.查询职工所需购买原材料的详细信息,并按出产厂家分组输入:工号输出:材料名称,数量,价格,厂名4.查询某一原材料的供应商的详细信息输入:原材料输出:供应商号,联系电话,地址,老板姓名,账号5.查询购买者的所有信息购买日期,购买人数,购买金额 6.查询购买者购买的零件的零件名,零件单价,零件数二 E-R图老板姓名联系电话地址部门电话部门名称部门编号帐号供应商号供应商m供应量供
2、应仓库号购买日期购买金额购买人数仓库电话面积库存量数量单价数量库存购买者零件采购买原材料仓库材料名称部门nnmn价格厂名1采购量1m材料用量加工领导属于零件名m1nn工号职工零件数量m职工姓名购买m营销店号销售职称年龄nn营销店号 三E-R图向关系模式的转换实体:部门(部门编号, 部门名称, 部门电话, 经理工号)职工(工号, 职工姓名, 年龄, 职称, 部门编号)仓库(仓库号, 仓库电话, 面积)供应商(供应商号, 联系电话, 老板姓名, 地址, 帐号)原材料(材料名称, 价格, 数量, 厂名)零件(零件名, 单价, 数量)购买者(销售店号,购买日期, 购买金额, 购买人数)联系:供应(供应
3、商号, 材料名称, 供应量)库存(仓库号, 材料名称, 库存量)采购(材料名称, 工号, 采购量)加工(材料名称, 零件名, 材料用量)销售(工号, 销售店号,销售零件名,销售数量)购买(零件名,销售店号,零件数量)四物理结构的设计各表格的定义部门表列名数据类型长度能否取空值备注部门编号varchar10NO主码部门名称varchar50NO部门电话int经理工号int职工表列名数据类型长度能否取空值备注工号intNO主码职工姓名varchar20NO年龄int职称varchar10部门编号varchar10仓库表列名数据类型长度能否取空值备注仓库号intNO主码仓库电话int面积int供应商
4、表列名数据类型长度能否取空值备注供应商号varchar10NO主码联系电话int老板姓名varchar10NO地址varchar50NO帐号varchar50原材料表列名数据类型长度能否取空值备注材料名称varchar30NO主码价格money数量int厂名varchar50零件表列名数据类型长度能否取空值备注零件名varchar20NO主码单价moneyNO数量int购买者者表列名数据类型长度能否取空值备注销售店名intNO主码购买人数int购买日期datetime购买金额money供应表列名数据类型长度能否取空值备注供应量int供应商号varchar10NO主码材料名称varchar30N
5、O主码库存表列名数据类型长度能否取空值备注库存量int仓库号intNO主码材料名称varchar30NO主码采购表列名数据类型长度能否取空值备注采购量int工号intNO主码材料名称varchar30NO主码加工表列名数据类型长度能否取空值备注材料用量int零件名varchar20NO主码材料名称varchar30NO主码销售表列名数据类型长度能否取空值备注销售数量int工号intNO主码销售店号intNO主码购买表列名数据类型长度能否取空值备注购买数量int销售店号intNO主码零件名varchar20主码五系统实现1数据库及其基本表的建立建库create database 零件加工厂数据管
6、理系统on(name=零件加工厂数据, filename=d:mywork零件加工厂数据.mdf, size=10, maxsize=20, filegrowth=1)log on(name=零件加工厂数据日志, filename=d:mywork零件加工厂数据日志.ldf, size=10, maxsize=20, filegrowth=10%)go建表1.部门表use 零件加工厂数据管理系统gocreate table 部门(部门编号 varchar(10) primary key, 部门名称 varchar(50) not null, 部门电话 int, 经理工号 int)go2.职工表
7、create table 职工(工号 int primary key, 职工姓名 varchar(20) not null, 年龄 int, 职称 varchar(10), 部门编号 varchar(10)go3.仓库表create table 仓库(仓库号 int primary key, 仓库电话 int, 面积 int) go 4.供应商表create table 供应商(供应商号 varchar(10) primary key, 联系电话 int, 老板姓名 varchar(10) not null, 地址 varchar(50) not null, 帐号 varchar)go5.原材
8、料表create table 原材料(材料名称 varchar(30) primary key, 价格 money, 数量 int, 厂名 varchar(50)go6.零件表create table 零件(零件名 varchar(20) primary key, 单价 money not null, 数量 int)go7.购买者表create table 购买者(销售店号 int primary key,购买数量 int, 购买金额 money, 购买人数 int, 购买日期 datetime not null)go8.供应表create table 供应(供应量 int, 供应商号 var
9、char(10) not null, 材料名称 varchar(30) not null, constraint 供应_pk primary key(供应商号,材料名称)go9.库存表create table 库存(库存量 int, 仓库号 int not null, 材料名称 varchar(30) not null, constraint 库存_pk primary key(仓库号,材料名称)go 10.采购表create table 采购(采购量 int, 工号 int not null, 材料名称 varchar(30) not null, constraint 采购_pk prima
10、ry key(工号,材料名称)go11.加工表create table 加工(材料用量 int, 零件名 varchar(20) not null, 材料名称 varchar(30) not null, constraint 加工_pk primary key(零件名,材料名称)go12.销售表create table 销售(销售数量 int, 工号 int not null, 销售店号 int not null, constraint 销售_pk primary key(工号,销售店号)go13.购买表create table 购买(购买数量 int, 零件名 char(20) not nu
11、ll,销售店号 int not null, constraint 购买_pk primary key(零件名,销售店号)go2创建索引索引1create nonclustered indexix_零件 on 零件(零件名,单价,数量)go索引2create nonclustered indexix_职工 on 职工(工号,职工姓名,年龄,职称,部门编号)go3创建视图视图1create view 职工销售asselect 职工.工号,职工姓名,部门编号,销售.销售数量from 职工,销售where 职工.工号=销售.工号go视图2create view 购买者购买asselect 购买者.销售
12、店号,购买金额,购买.购买数量from 购买者,购买where 购买者.销售店号=购买.销售店号go视图3create view 职工采购asselect 职工.工号,部门编号,采购.材料名称,采购量from 职工,采购where 职工.工号=采购.工号go4创建约束Check约束1alter table 职工with nocheckadd check(年龄=18 and 年龄=50)goCheck约束3alter table 销售with nocheck add constraint CK_销售数量 check(销售数量=好 or 销售数量=较好or 销售数量=一般)go外键约束alter
13、table 职工add foreign key (部门编号) references 部门(部门编号)go5创建存储过程create procedure 购买者购买_infoasselect 零件.零件名,购买者.购买数量,购买.销售店号from 购买 join 零件 on 购买.零件名=零件.零件名join 购买者on 购买者.销售店号=购买.销售店号go查询语句1.查询所有部门的信息部门编号,部门名称,部门电话,经理工号Select 部门编号,部门名称,部门电话,经理工号From 部门2.查询所有职工的个人信息领导,工号,姓名,年龄,职称Select工号,姓名,年龄,职称, 部门编号From
14、 职工3.查询职工所需购买原材料的详细信息,并按厂名分组输入:工号输出:材料名称,数量,价格,厂名设输入的工号职为xSelect 工号,材料名称,数量,价格,厂名From 职工as A,采购as B ,原材料as CWhere A.工号=B.工号 and B.材料名称=C.材料名称 and A.工号 as xGroup by 厂名4.查询某一原材料的供应商的详细信息输入:原材料输出:供应商号,联系电话,地址,老板姓名,账号设输入的材料名称为xSelect 材料名称,供应商号,联系电话,地址,老板姓名,账号From 原材料 as A,供应商 as B,供应 as CWhere A. 材料名称=C. 材料名称and B. 供应商号=C. 供应商号and A. 材料名称 as x5.查询消费者的所有信息购买日期,购买人数,购买金额,销售店号Select 购买日期,购买人数,购买金额,销售店号From 购买者6.查询购买者购买的零件的零件名,单价,数量设输入的购买者的销售店号为xSelect 销售店号,零件名,单价,数量From 购买 as A,购买者 as B,零件 as CWhere A. 销售店号=B. 销售店号and A. 零件名=C. 零件名and B. 销售店号as x 完成日期:2010.12.21专心-专注-专业