工厂数据库管理系统课程设计说明书(8)

2019-04-13 22:49

九、总结

关于数据库课程设计,总的来说,受益匪浅。此次课程设计主要是通过运用所学的数据库系统理论的相关知识来设计工厂数据库管理系统,模拟工厂的生产过程。在课程设计的前几天我还停留在只熟悉基本表的建立,基本查询的层次上,对于存储过程、触发器一片模糊,通过这些天的课程设计让我对建表、创建视图、建存储过程、查询语句、插入语句、更新数据以及数据库安全性等内容有了更深的理解。在解决课程设计遇到的各种问题的过程中,学到了解决问题的方法,比如说在删除数据和更新数据时,由于外键约束的存在,经常会出现错误,这时要注意各个表建立的顺序。一般先建立主键表,再建立外建表。另外每个细节需要注意,不能马虎,不然就会出现或大或小的问题。

29

参考文献

[1]王珊,萨师煊.数据库系统概论[M].北京:高等教育出版社,2006.

30

附录:源代码

创建表代码: 工厂表

create table factory (

factory_name varchar(20)primary key not null, factory_manager varchar(8), )

车间表

create table workshop (

workshop_no char(4) primary key not null, workshop_manager varchar(8), workshop_add varchar(30), workshop_tel char(11),

factory_name varchar(20)not null,

foreign key (factory_name) references factory(factory_name) )

职工表

create table worker (

worker_no varchar(8) primary key not null, worker_name varchar(8),

worker_sex char(2)CHECK(worker_sex in('男','女')),

worker_age smallint check(worker_age>=18 and worker_age<=65), worker_profession varchar(20), workshop_no char(4)not null,

foreign key (workshop_no)references workshop(workshop_no)

仓库表

create table storehouse (

storehouse_no char(4) primary key, storehouse_manager char(8), storehouse_tel char(12), factory_name varchar(20),

inventory_capacity int check(inventory_capacity>=0and inventory_capacity<=100), foreign key (factory_name)references factory(factory_name) );

产品表

31

create table product (

product_no char(6) primary key, product_name varchar(20), product_price numeric(8,1), product_quality int,

workshop_no char(4) not null, storehouse_no char(4)not null,

foreign key (workshop_no)references workshop(workshop_no), foreign key (storehouse_no)references storehouse(storehouse_no) )

零件表

create table element (

element_no char(6) primary key, element_weight numeric(8,1), element_quality int,

element_price numeric(8,1), storehouse_no char(4)not null,

foreign key (storehouse_no)references storehouse(storehouse_no) )

零件生产表

create table element_production (

workshop_no char(4) not null, element_no char(6) not null, element_date date,

primary key(workshop_no,element_no),

foreign key (workshop_no)references workshop(workshop_no), foreign key (element_no)references element(element_no) )

组装表

create table install (

product_no char(6)not null, element_no char(6)not null,

primary key(product_no,element_no),

foreign key(product_no)references product(product_no), foreign key(element_no)references element(element_no) )

32

视图:

创建不同仓库的容量视图 create view v_storehouse as

select storehouse_no,inventory_capacity from storehouse;

创建不同工种的职工人数视图 create view count_worker as

select worker_profession,COUNT(*)as number from worker group by worker_profession

.创建不同年龄的职工人数视图 create view V_worker as

select worker_age,COUNT(*)as number from worker group by worker_age

创建查询仓库不同产品质量<=1视图 create view v_p as

select storehouse_no,product_name,COUNT (*)as number from product where product_quality<=1 group by storehouse_no,product_name

创建产品的相关信息视图 create view V_product as

select product_no,workshop_no,product_price from product

产品入库存储过程 create proc proc_product @product_no char(6), @product_name char(20), @product_price numeric(8, 1), @product_quality int, @workshop_no char(4), @storehouse_no char(4) AS BEGIN

if @product_quality<=3 begin insert into product values(@product_no,@product_name,@product_price,@product_quality,@workshop_no,@storehouse_no);

33


工厂数据库管理系统课程设计说明书(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:12、无机化学万题库(填空题)(7-9)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: