数据库课程设计.docx
- 文档编号:2933897
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:8
- 大小:71.07KB
数据库课程设计.docx
《数据库课程设计.docx》由会员分享,可在线阅读,更多相关《数据库课程设计.docx(8页珍藏版)》请在冰豆网上搜索。
数据库课程设计
《数据库课程设计》
设计选题:
材料与零件数据库
班级:
船海1102
设计人:
陈伟
学号:
U201112237
一:
需求分析
数据需求:
1.材料的基本信息的输入,包括材料名称,材料编号,材料价格(元/千克)以及材料的提供位置。
2.零件的基本信息的输入,包括零件名称,零件编号,所用材料的编号,所需材料量(千克/件)以及生产公司。
3.零件生产公司的基本信息输入,包括公司的名称,公司地点以及公司生产的零件售价(元/件)。
管理需求:
1.材料信息的查询和修改。
2.材料信息的添加与删除。
3.零件信息的查询与修改。
4.零件信息的添加与删除。
5.公司信息的查询与修改。
6.公司信息的添加与删除。
7.材料,零件,公司信息之间的连接查询。
8.对零件的造价与卖价的分析。
二:
数据库设计
1.实体模型
2.ER图到关系图的转换
三:
数据字典
材料表C
Cname
Char[10]
不允许为空
Cnum(主键)
Char[8]
不允许为空
Cprice
Char[5]
不允许为空
Caddress
Char[20]
允许为空
零件表L
Lnum
Char[8]
不允许为空
Lname
Char[10]
不允许为空
Cnum
Char[8]
不允许为空
Cuse
Char[4]
不允许为空
Gname
Char[10]
不允许为空
公司表G
Gname(主键)
Char[10]
不允许为空
Gaddress
Char[20]
允许为空
Gpricess
Char[5]
不允许为空
四:
功能实现
1.数据库的建立
createdatabaseCLG
on
(name=CLG,
filename='e:
\database\clg.mdf’,
size=1)
logon
(name=CLG1,
filename='e:
\database\clg1.ldf',
size=1)
2.创建数据表
(1)材料表C;
useCLG
createtableC
(Cnumchar(8)primarykey,
Cnamechar(10)notnull,
Cpricechar(5)notnull,
Caddresschar(20));
(2)零件表L
createtableL
(Lnumchar(8)primarykey,
Lnamechar(10)notnull,
Cnumchar(8)notnull,
Cusechar(4)notnull,
Gnamechar(10)notnull);
(3)公司表G
createtableG
(Gnamechar(10)primarykey,
Gaddresschar(20),
Gpricechar(5)notnull);
2.数据库操作(插入、查询、删除、修改、添加)
2.1插入数据
(1)向材料表插入数据
insertintoCvalues('10000','C1','120','武汉')
insertintoCvalues('10001','C2','100','北京')
insertintoCvalues('10002','C3','80','上海')
insertintoCvalues('10003','C4','150','北京')
insertintoCvalues('10004','C5','90','成都')
insertintoCvalues('10005','C6','400','上海')
insertintoCvalues('10006','C7','40','武汉')
查看记录
select*fromC
(2)想零件表插入数据
insertintoLvalues('2000','L1','10000','4','G1')
insertintoLvalues('2001','L2','10003','3','G2')
insertintoLvalues('2002','L3','10001','3','G3')
insertintoLvalues('2003','L4','10002','4','G4')
insertintoLvalues('2004','L5','10003','2','G5')
insertintoLvalues('2005','L6','10006','5','G6')
查看结果
select*fromL
(3)向公司表插入数据
insertintoGvalues('G1','武汉','800')
insertintoGvalues('G2','上海','700')
insertintoGvalues('G3','广州','500')
insertintoGvalues('G4','武汉','430')
insertintoGvalues('G5','上海','550')
insertintoGvalues('G6','重庆','340')
查询结果
select*fromG
2.2查询数据
(1)查询价格大于100元/千克的材料的名称与价格和位置
selectCname,CpricefromCwhereCprice>100
(2)查询使用C4材料,并且使用量大于或等于3的零件的名称与使用及编号
selectLnum,Lname,CusefromLwhereCnumin(selectCnumfromCwhereCname='C4')ANDCuse>=3
(3)连接查询使用的C2材料的零件的零件编号,零件名称,材料编号,材料名称
selectLnum,Lname,C.Cnum,Cname
fromC,L
whereL.Cnumin(selectCnumfromCwhereCname='C2')ANDL.Cnum=C.Cnum
2.3修改数据
修改材料C2的价格为110
updateCsetCprice=110whereCname='C2'
查看修改后的数据
select*fromC
2.4向表中添加字段
向公司表中添加公司年龄Gage字段
altertableGaddGagechar(4)
然后向表中插入年龄数据
updateGsetGage=5whereGname='G1'
updateGsetGage=3whereGname='G2'
updateGsetGage=6whereGname='G3'
updateGsetGage=2whereGname='G4'
updateGsetGage=13whereGname='G5'
updateGsetGage=12whereGname='G6'
查看结果
select*fromG
2.5建立视图
(1)创建所有公司产品售价大于400的产品零件信息视图
createviewL400
as
selectLnum,Lname,Cnum,L.GnamefromL,GwhereL.Gname=G.GnameANDGprice>400
查看视图
select*fromeL400
(2)创建零件的利润视图
createviewLprofit(LName,Price,Narimoto,Profit,Gname)
as
selectLname,G.Gprice,convert(int,[Cuse])*convert(int,[Cprice]),convert(int,[Gprice])-convert(int,[Cuse])*convert(int,[Cprice]),G.Gname
fromL,C,G
whereL.Cnum=C.CnumANDL.Gname=G.Gname
查看视图
select*fromLprofit
五.个人心得与体会
从整个数据库的制作过程,对大部分SQL语句都使用了一遍,可以知道建立一个数据库需要对SQL语句非常的熟悉,并且在制作过程中时不时的会出现问题,得自己想办法去修改。
建立这个数据库让我对SQL语句和SQLServer2005更加的熟悉。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计