当前位置:文档之家› 数据库实验报告

数据库实验报告

. .
《数据库原理与技术》实验报告
实验一、数据定义及更新语句练习
一、实验容
建立如下mySPJ数据库,包括S,P,J,和SPJ四个基本表(《数据库系统概论》第二章习题5中的四个表),要现关系的三类完整性。

S(SNO,SNAME,STATUS,CITY);
P(PNO,PNAME,COLOR,WEIGHT);
J(JNO,JNAME,CITY);
SPJ(SNO,PNO,JNO,QTY);
二、完成情况
附上按照实验容编写的程序代码。

(小四号字,宋体)
三、实验结果
1、插入一条记录
2、①将p表中的所有红色零件的重量增加5。

②将spj表中所有供应商的QTY属性值减少10。

用子查询。

3.利用Delete语句删除p表中的所有红色零件的记录。

附上各个步骤所用的实验用例与结果显示(小四号字,宋体)
四、问题与解决
(小四号字,宋体)
1 .实验中遇到的问题及解决过程
2 .实验中产生的错误及原因分析
首先写出执行语句不成功的时候系统报告的错误信息。

然后分析错误原因,并给出解决办法。

实验二简单查询和连接查询
一、实验容
(一)完成下面的简单查询:
①查询所有“”的供应商明细;
②查询所有“红色”的14公斤以上的零件。

③查询工程名称中含有“厂”字的工程明细。

(二)完成下面的连接查询:
①等值连接:求s表和j表的相同城市的等值连接。

②自然连接:查询所有的供应明细,要求显示供应商、零件和工程的名称,并按照供应、工程、零件排序。

③笛卡尔积:求s和p表的笛卡尔积。

④左连接:求j表和spj表的左连接。

⑤右连接:求spj表和j表的右连接。

二、完成情况
(一)完成下面的简单查询:
①查询所有“”的供应商明细;
②查询所有“红色”的14公斤以上的零件。

③查询工程名称中含有“厂”字的工程明细。

(二)完成下面的连接查询:
①等值连接:求s表和j表的相同城市的等值连接。

②自然连接:查询所有的供应明细,要求显示供应商、零件和工程的名称,并按照供应、工程、零件排序。

③笛卡尔积:求s和p表的笛卡尔积。

④左连接:求j表和spj表的左连接。

⑤右连接:求spj表和j表的右连接。

附上按照实验容编写的程序代码。

(小四号字,宋体)
三、实验结果
附上各个步骤所用的实验用例与结果显示(小四号字,宋体)
四、问题与解决
(小四号字,宋体)
1 .实验中遇到的问题及解决过程
2 .实验中产生的错误及原因分析
首先写出执行语句不成功的时候系统报告的错误信息。

然后分析错误原因,并给出解决办法。

实验三分组查询和嵌套查询一、实验容
(一)分组查询:
1、求各种颜色零件的平均重量。

2、求供应商和供应商的总个数。

3、求各供应商供应的零件总数。

4、求各供应商供应给各工程的零件总数。

5、求使用了100个以上P1零件的工程名称。

6、求各工程使用的各城市供应的零件总数。

(二)嵌套查询:
1、in连接谓词查询:
①查询没有使用供应商供应的红色零件的工程名称。

②查询供应了1000个以上零件的供应商名称。

(having)
2、比较运算符:求重量大于所有零件平均重量的零件名称。

3、Exists连接谓词:
①查询供应J1的所有的零件都是红色的供应商名称。

②至少用了供应商S1所供应的全部零件的工程号JNO。

二、完成情况
(一)分组查询:
1、求各种颜色零件的平均重量。

2、求供应商和供应商的总个数。

3、求各供应商供应的零件总数。

4、求各供应商供应给各工程的零件总数。

5、求使用了100个以上P1零件的工程名称。

6、求各工程使用的各城市供应的零件总数。

(二)嵌套查询:
1、in连接谓词查询:
①查询没有使用供应商供应的红色零件的工程名称。

②查询供应了1000个以上零件的供应商名称。

(having) SELECT SNAME
FROM S
WHERE SNO IN(
SELECT SNO
FROM SPJ
GROUP BY SNO
HAVING SUM(QTY)>=1000)
2、比较运算符:求重量大于所有零件平均重量的零件名称。

3、Exists连接谓词:
①查询供应J1的所有的零件都是红色的供应商名称。

②至少用了供应商S1所供应的全部零件的工程号JNO。

附上按照实验容编写的程序代码。

(小四号字,宋体)
三、实验结果
附上各个步骤所用的实验用例与结果显示(小四号字,宋体)
四、问题与解决
1、在选择数据类型时,没有选择正确的数据类型,导致含有SUM的语句不能执行。

(小四号字,宋体)
1 .实验中遇到的问题及解决过程
2 .实验中产生的错误及原因分析
首先写出执行语句不成功的时候系统报告的错误信息。

然后分析错误原因,并给出解决办法。

实验成绩。

相关主题