1、数据库的建表语句,我们是必须要掌握的,其中,主外键的定义是一种数据库完整性的规范,我们也要掌握。
创建如下两个表:
course表
cid number 主键。
cname varchar2
create table course(
cid number primary key,cname varchar(30))
stu_course表 (组合主键 sid,cid)
sid number
sname varchar2
cid number 外键。
grade number
create table stu_course(
sid number,sname varchar(30),grade number,cid number,constraint pk_scid primary key(sid,cid), constraint fk_cid foreign key(cid) references course(cid))
2、向以上两个表各插入几条记录(随着下面的题目要求,你可以随时插入符合实验条件的记录)
insert into course values(4,'c++语言')
insert into stu_course values(1001,'张三',95,2)
3、查询每个表各有多少行记录。
4、查询学习3号课程的学生最高分数。
select max(grade) from stu_course where cid=3
5、查询”zhanghong”这名同学学习课程的课程名字。
select cname from stu_course,course
where sname='zhanghong'
and stu_
6、将学号98001同学选修3号课程的成绩改为90分。
7、把上题的修改撤销(再回到原来的成绩)
8、建立选修3号课程的学生视图。
create or replace view stu_view
as select * from stu_course where cid=3
9、求选修3号课程的课程平均分。
select **g(grade) from stu_course
where cid=3
10、用游标查询stu_course表中的所有信息,逐一输出。
declare
v_rowstu stu_course%rowtype;
cursor stu_cur1 is select * from stu_course;
begin
open stu_cur1;
fetch stu_cur1 into v_rowstu;
while stu_cur1%found loop
dbms_' v_' v_' v_
fetch stu_cur1 into v_rowstu;
end loop;
close stu_cur1;
end;11、创建一个存储过程getinfo_proc,通过输入参数学生学号sid,输出该学生的信息。对不存在的学生,要有异常处理。(这里可以利用隐性游标)
create or replace procedure getinfo_proc(v_sid in number)
is v_stu stu_course%rowtype;
begin
select * into v_stu from stu_course where sid=v_sid;
dbms_expection
when no_data_found
dbms_'该学生不存在!')
end;12、创建一个函数getmingrade,这个函数的功能是输入参数学生学号,函数返回这个学生选修课程的最低成绩是多少分。
create or replace function getmingrade(e_sid number)
return number
isv_grade stu_
beginselect min(grade) into v_grade from stu_course where e_sid=sid;
return v_grade;
end;declare
var_min number;
var_sid number;
beginvar_sid:=&inputsid;
var_min:=getmingrade(var_sid);
dbms_'最小成绩为:'|var_min);
end;
Oracle实验四答案
select initcap ename from emp 显示正好为5个字符的员工姓名。select ename from emp where length ename 5 显示不带有r的员工姓名。select from emp where ename not like r 显示所有员工的前三个字...
oracle实验二 表管理答案
实验二表管理。一 实验目的。1.熟悉创建表 修改表等相关命令。2.掌握表中数据的插入 修改 删除等数据操作。3.掌握数据的查询基础。二 实验要求。1.整理上机步骤,总结经验和体会。2.完成实验日志和上交程序。三 作业提交。1.建立以自己名字命名的文件夹,文件夹中包含两个文件夹,名字各为 实验成果,实...
答案实验五 ORACLE编程 一
oracle技术 实验报告 五 实验名称oracle编程 一 姓名学号班级。实验目的 1 熟练掌握编写和调试pl sql块的方法。2 熟练掌握编写和调试存储过程方法。3 熟练掌握编写和调试函数方法。4 熟练掌握各种控制结构语句的使用。实验内容 1 编写一个pl sql块,输出emp表中所有员工的员工...