数据库上机实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库上机实验报告
数据库上机实验报告
篇一:数据库上机实验报告
数据库实验
(第三次)
题目1实验内容:
1.检索上海产的零件的工程名称;
2.检索供应工程J1零件p1的供应商号sno;
3.检索供应工程J1零件为红色的供应商号sno;
4.检索没有使用天津生产的红色零件的工程号Jno;
5.检索至少用了供应商s1所供应的全部零件的工程号Jno;
6.检索购买了零件p1的工程项目号Jno及数量QTY,并要求对查询的结果按数量QTY降序排列。
1
selectjname
fromj
wherejnoin
(selectjno
fromspj
wheresnoin
(selectsno
froms
wherecity=上海
)
);
2
selectsno
fromspj
wherejno=j1andpno=p1 3
selectdistinctsno fromspj
wherepnoin (selectpno
fromp
wherecolor=红andpnoin (selectpno
fromspj
wherejno=j1
)
);
4
selectdistinctjno
fromspj wherepnonotin (selectpno
fromp
wherecolor=红andpnoin (selectpno
fromspj
wheresnoin
(selectsno
froms
wherecity=天津
)
)
)
5
selectjno
fromspj
wheresno=s1
6
selectjno,qty
fromspj
wherepno=p1
orderbyqtydesc
四﹑思考题
1.如何提高数据查询和连接速度。
建立视图
2.试比较连接查询和嵌套查询
有些嵌套查询是可以用连接来代替的,而且使用连接的
方式,性能要比
嵌套查询高出很多
当查询涉及多个关系时,用嵌套查询逐步求解结构层次
清楚,易于构造,具有结构化程序设计的优点。但是相比于连接运算,目前商用关系数据库管理系统对嵌套查询的优化做的还不
够完善,所以在实际应用中,能够用连接运算表达的查
询尽可能采用连接运算。
二
题目1实验内容:
1.把全部红色零件颜色改为粉红色;
2.由s1供给J1的零件p1今改为由s2供应,作必要
修改;
3.删去全部蓝色零件及相应的spJ记录;
4.把全部螺母的重量置为0;
5.为spJ表的QTY字段设计checK约束:0〈QTY〈1000;
6.实现对spJ表的操作权限管理的使用。
1
updatep
setcoLoR=粉红
wherepnoin
(selectpno
fromp
wherecoLoR=红)
2
篇二:sQLserver数据库上机实验报告
《数据库系统原理》
上机实验报告
学号:1120XX1743姓名:谈兆年班级:07111301一、实验目的与要求:
?熟练使用sQL语句
?掌握关系模型上的完整性约束机制
二、实验内容
1:利用sQL语句创建employee数据库cReATeDATAbAseemployee;
结果:
2:利用sQL语句在employee数据库中创建人员表person、月薪表salary及部
门表dept。
做法:按表1、表2、表3中的字段说明创建
表1person表结构
表2salary表结构
表3dept表结构
程序为:
cReATeTAbLedept(
deptnochAR(4)pRImARYKeYnoTnuLL,dnameVARchAR(10)noTn uLL)
cReATeTAbLeperson(
p_nochAR(6)pRImARYKeYnotnull,p_nameVARchAR(10)notnu ll,sexchAR(2)notnull,birthdateDatetimenull,profVARc hAR(10)null,DeptnochAR(4)notnull,
FoReIgnKeY(Deptno)ReFeRencesdept(Deptno)); cReATeTAbLesalary
(p_nochar(6)pRImARYKeYnotnull,baseDec(5), bonusDec(5)checK(bonus>50),Factasbase+bonus,monthIn tnotnull,
FoReIgnKeY(p_no)ReFeRencesperson(p_no));结果:
3:利用sQL语句向表person、salary和dept中插入
数据。
做法:按表4、表5、表6中的数据插入。
表4表person中的数据
表5表salary中的数据
表6表dept中的数据
程序为:
InseRTInTodept(Deptno,Dname)values(0001,人事
部);InseRTInTodept(Deptno,Dname)values(0002,财务部);InseRTInTodept(Deptno,Dname)values(0003,市场部);程序为:
InseRTInToperson(p_no,p_name,sex,birthdate,prof,Dep tno)VALues(000001,王云,男,1979-4-7,中
级,0001);InseRTInToperson(p_no,p_name,sex,birthdate ,prof,Deptno)VALues(000002,谢志文,男,1975-2-14,中级,0001);InseRTInToperson(p_no,p_name,sex,birthdate ,prof,Deptno)VALues(000003,李浩然,男,1970-8-25,高