数据库实验答案_第1页
数据库实验答案_第2页
数据库实验答案_第3页
数据库实验答案_第4页
数据库实验答案_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-作者xxxx-日期xxxx数据库实验答案【精品文档】数据库系统概论实验报告书专业班级学 号姓 名指导教师 安徽工业大学计算机学院【精品文档】实验一:数据定义语言 实验日期 年 月 日 实验目的 熟悉Oracle上机环境及Oracle客户端的配置;熟练掌握和使用DDL语言,建立、修改和删除数据库表、主键、外键约束关系和索引。 实验内容 Oracle上机环境以及Oracle客户端的配置参见附录。1 SQL数据定义语句: 例1-1: (建立数据库表) 建立教学数据库的四个数据库表,其中Student表中不包含SSEX(C,2) 字段,Sname 字段为Sname(C,8)且可为空。1,创建表Stu

2、dentCREATE TABLE Student ( SNO CHAR(5) , SNAME CHAR(10) NOT NULL, SDEPT CHAR(2) NOT NULL, SCLASS CHAR(2) NOT NULL, SSEX CHAR(2), SAGE NUMBER(2),CONSTRAINT SNO_PK PRIMARY KEY(SNO)2,创建表CourseCREATE TABLE Course(CNO CHAR(3),CNAME VARCHAR2(16) ,CTIME NUMBER(3),CONSTRAINT CNO_PK PRIMARY KEY(CNO)3,创建表Teac

3、h CREATE TABLE Teach( TNAME VARCHAR(8), TSEX CHAR(2), CNO CHAR(3), TDATE DATE, TDEPT CHAR(2), CONSTRAINT TT_PK PRIMARY KEY(TNAME,CNO,TDEPT), CONSTRAINT CNO_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)4,创建表ScoreCREATE TABLE Score(SNO CHAR(5),CNO CHAR(3),SCORE NUMBER(5,2),CONSTRAINT SC_PK PRIMARY KEY(SN

4、O,CNO),CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO),CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)二、插入数据1,StudentINSERT INTO Student VALUES(96001,马小燕,CS,01,21,女)INSERT INTO Student VALUES(96002,黎明,CS,01,18,男)INSERT INTO Student VALUES(96003,刘东明,MA,01,18,男)INSERT INTO Studen

5、t VALUES(96004,赵志勇,IS,02,20,男)INSERT INTO Student VALUES(97001,马蓉,MA,02,19,女)INSERT INTO Student VALUES(97002,李成功,CS,01,20,男)INSERT INTO Student VALUES(97003,黎明,IS,03,19,女)INSERT INTO Student VALUES(97004,李丽,CS,02,19,女)INSERT INTO Student VALUES(96005,司马志明,CS,02,18,男) 2,CourseINSERT INTO Course VALU

6、ES(001,数学分析,144)INSERT INTO Course VALUES(002,普通物理,144)INSERT INTO Course VALUES(003,微机原理,72)INSERT INTO Course VALUES(004,数据结构,72)INSERT INTO Course VALUES(005,操作系统,64)INSERT INTO Course VALUES(006,数据库原理,64)INSERT INTO Course VALUES(007,DB_Design,48)INSERT INTO Course VALUES(008,程序设计,56)3,TeachINSE

7、RT INTO Teach VALUES(王成钢,男,004,TO_DATE( 1999-09-05, YYYY-MM-DD),CS);INSERT INTO Teach VALUES(李正科,男,003,TO_DATE( 1999-09-05, YYYY-MM-DD),CS)INSERT INTO Teach VALUES(严敏,女,001,TO_DATE( 1999-09-05, YYYY-MM-DD),MA)INSERT INTO Teach VALUES(赵高,男,004,TO_DATE( 1999-09-05, YYYY-MM-DD),IS)INSERT INTO Teach VAL

8、UES(李正科,男,003,TO_DATE( 2000-02-23, YYYY-MM-DD),MA)INSERT INTO Teach VALUES(李玉兰,女,006,TO_DATE( 2000-02-23, YYYY-MM-DD),CS)INSERT INTO Teach VALUES(王成钢,男,004,TO_DATE( 2000-02-23, YYYY-MM-DD),IS)INSERT INTO Teach VALUES(马悦,女,008,TO_DATE( 2000-09-06, YYYY-MM-DD),CS)INSERT INTO Teach VALUES(王成钢,男,007,TO_

9、DATE( 1999-09-05, YYYY-MM-DD),CS)to_date( 05-09-1999, DD-MM-YYYY );4,ScoreINSERT INTO Score VALUES(96001,001,77.5)INSERT INTO Score VALUES(96001,003,89)INSERT INTO Score VALUES(96001,004,86)INSERT INTO Score VALUES(96001,005,82)INSERT INTO Score VALUES(96002,001,88)INSERT INTO Score VALUES(96002,003

10、,92.5)INSERT INTO Score VALUES(96002,006,90)INSERT INTO Score VALUES(96005,004,92)INSERT INTO Score VALUES(96005,005,90)INSERT INTO Score VALUES(96005,006,89)INSERT INTO Score VALUES(96005,007,76)INSERT INTO Score VALUES(96003,001,69)INSERT INTO Score VALUES(97001,001,96)INSERT INTO Score VALUES(970

11、01,008,95)INSERT INTO Score VALUES(96004,001,87)INSERT INTO Score VALUES(96003,003,91)INSERT INTO Score VALUES(97002,003,91)INSERT INTO Score VALUES(97002,004,)INSERT INTO Score VALUES(97002,006,92)INSERT INTO Score VALUES(97004,005,90)INSERT INTO Score VALUES(97004,006,85)INSERT INTO Score VALUES(9

12、7004,008,75)INSERT INTO Score VALUES(97003,001,59)INSERT INTO Score VALUES(97003,003,58) 例1-2: (修改数据库表) 在Student表中增加SEX(C,2) 字段。 ALTER TABLE Student ADD SEX CHAR(2) 例1-3: (修改列名) 将Student表中列名SEX修改为SSEX。ALTER TABLE Student RENAME COLUMN SEX TO SSEX; 例1-4;(修改数据库表) 将Student表中把Sname 字段修改为Sname(C,10)且为非空。

13、 ALTER TABLE Student MODIFY SNAME VARCHAR(10) NOT NULL例1-5:(建立索引) 为Score表按课程号升序、分数降序建立索引,索引名为SC_GRADECREATE INDEX SC_GRADE ON Score(CNO ASC,SCORE DESC) 例1-6: (删除索引) 删除索引SC_GRADE。DROP INDEX SC_GRADE例1-7: (建立数据库表) 建立数据库表S1(SNO,SNAME,SD,SA),其字段类型定义与Student表中的相应字段(SNO,SNAME,SDEPT,SAGE)的数据类型定义相同CREATE TA

14、BLE S1(SNO CHAR(5) , SNAME CHAR(10) NOT NULL, SD CHAR(2) NOT NULL,SA NUMBER(2)例1-8: (修改数据库表) 删除成绩表Score的参照完整性约束关系。ALTER TABLE Score DROP CONSTRAINT SNO_FK ;ALTER TABLE Score DROP CONSTRAINT CNOM_FK; 例1-9: (修改数据库表) 添加成绩表Score的参照完整性约束关系。ALTER TABLE Score ADD CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENC

15、ES Student(SNO)ALTER TABLE Score ADD CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFERENCES Course(CNO) 例1-10: (修改数据库表名) 将数据库表S1改名为Student_TempRENAME S1 TO Student_Temp 实验要求 熟悉Oracle上机环境,掌握Oracle客户端的配置; 建立数据库表,修改数据库表结构,建立、删除索引; 实验方法 按照附录中的操作步骤进行客户端的配置; 将实验需求用SQL语句表示; 执行SQL语句; 查看执行结果,如果结果不正确,进行修改,直到正确为止。 实验总

16、结 实验通过使用sqlplus,学习对oracle的客户端创建,在服务器上建立用户,基本表是数据库的核心,所以创建正确的基本表是数据库的使用的前提,本次实验学习正确建立基本表并根据基本表中的属性建立索引和参照完整性约束关系,学习插入,修改,删除基本表。创建基本表时,首先要确定具体要创建几张基本表,再根据具体某张基本表确定该表的具体属性,为每个属性确定数据类型,再跟数据间的关系确定表的主键和外键。基本表建立完成后,根据基本表的数据类型插入具体的数据 再插入数据时,对于日期的插入总是不会,后来在通过同学帮助,并且我也通过查资料,最终解决了这个问题。实验二:数据操纵语言 实验日期 年 月 日 实验目

17、的 在实验一的基础上,熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。 实验内容 2 SQL数据操纵语句:例2-2:(多行插入) 将表Student中在计算机系(CS)的学生数据插入到表Student_Temp中。INSERT INTO Student_Temp(SNO,SNAME,SD,SA) SELECT SNO,SNAME,SDEPT,SAGE FROM Student 例2-3:(利用查询来实现表的定义与数据插入) 求每一个学生的平均成绩,把结果存入数据库表Student_Gr中。CREATE TABLE Student_Gr( SNO CHAR(8) NOT NULL, S

18、AVG NUMBER(5,2) INSERT INTO Student_Gr(SNO,SAVG) SELECT SNO,AVG(SCORE) FROM Score GROUP BY SNO 例2-4: (修改数据) 将Student_Temp表中所有学生的年龄加2。UPDATE Student_Temp SET SA=SA+2 例2-5: (修改数据) 将Course表中程序设计课时数修改成与数据结构的课时数相同。UPDATE Course SET CTIME= ( SELECT CTIME FROM Course WHERE CNAME=数据结构) WHERE CNAME=程序设计 例2-6

19、: (插入数据) 向Score表中插入数据(98001, 001, 95),根据返回信息解释其原因。INSERT INTO Score VALUES(98001,001,95)因为Score表中的SNO字段是根据Student中的SNO建立的例2-7: (插入数据) 向Score表中插入数据(97001, 010, 80),根据返回信息解释其原因。 因为Score表中的CNO字段是根据Course中的CNO建立的,Course表中并没有课程号是010的例2-8: (删除数据) 删除Student表中学号为96001的学生信息,根据返回信息解释其原因。DELETE FROM STUDENT WH

20、ERE SNO=96001因为Student表中学号已经被别的表作为外键,不可以被删除,违反完整约束条件例2-9: (删除数据) 删除Course表中课程号为003 的课程信息,根据返回信息解释其原因。因为Course表中课程号已经被别的表作为外键,不可以被删除,违反完整约束条件 例2-10: (删除数据) 删除学生表Student_Temp中学号以96打头的学生信息。(此操作后,注意用ROLLBACK回退可能更新的数据)DELETE FROM Student_Temp WHERE SNO LIKE 96% 例2-11: (删除数据) 删除数据库表Student_Temp中所有学生的数据。 D

21、ELETE FROM Student_Temp WHERE 1!=0; 例2-12:(删除表) 删除数据库表Student_Temp和Student_Gr。DROP TABLE Student_Temp DROP TABLE Student_Gr; 实验要求 对数据库表进行插入、修改和删除数据的操作。 实验方法 按照附录中的操作步骤进行客户端的配置; 将实验需求用SQL语句表示; 执行SQL语句; 查看执行结果,如果结果不正确,进行修改,直到正确为止。 实验总结 创建基本表时,首先要确定具体要创建几张基本表,再根据具体某张基本表确定该表的具体属性,为每个属性确定数据类型,再跟数据间的关系确定表

22、的主键和外键。基本表建立完成后,根据基本表的数据类型插入具体的数据 再插入数据时,对于日期的插入总是不会,后来在通过同学帮助,并且我也通过查资料,最终解决了这个问题。并且我学会了对基本表结构的一些基本操作,这对我以后对Oracle的学习都有很大帮助,此次试验让我受益匪浅实验三:数据查询语言 实验日期 年 月 日 实验目的 体会SQL语言数据查询功能的丰富和复杂。 实验内容 3 SQL数据查询语句: 例3-1: (选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。SELECT SNO,SNAME,SSEX,SAGE FROM Student 例3-2: (不选择重复行) 求选修了课程的学生

23、学号。SELECT DISTINCT SNO FROM Score WHERE CNO IS NOT NULL 例3-3: (选择表中的所有列) 求全体学生的详细信息。SELECT * FROM Student 例3-4: (使用表达式) 求全体学生的学号、姓名和出生年份。SELECT SNO,SNAME,2011-SAGE AS YEAR OF BIRTH FROM Student 例3-5: (使用列的别名) 求学生的学号和出生年份,显示时使用别名“学号”和“出生年份”。SELECT SNO AS学号,2011-SAGE AS 出生年份 FROM Student 例3-6: (比较大小条件

24、) 求年龄大于19岁的学生的姓名和年龄。SELECT SNAME,SAGE FROM Student WHERE SAGE19 例3-7: (比较大小条件) 求计算机系或信息系年龄大于18岁的学生的姓名、系和年龄。SELECT SNAME,SDEPT,SAGE FROM Student WHERE SDEPT IN(CS,IS) 例3-8: (确定范围条件) 求年龄在19岁与22岁(含20岁和22岁)之间的学生的学号和年龄。SELECT SNO,SAGE FROM Student WHERE SAGE BETWEEN 19 AND 22 例3-9: (确定范围条件) 求年龄不在19岁与22岁之

25、间的学生的学号和年龄。SELECT SNO,SAGE FROM Student WHERE SAGE NOT BETWEEN 19 AND 22 例3-10:(确定集合条件) 求在下列各系的学生信息:数学系、计算机系。SELECT * FROM Student WHERE SDEPT IN(MA,CS) 例3-11:(确定集合条件) 求不是数学系、计算机系的学生信息。SELECT * FROM Student WHERE SDEPT NOT IN(MA,CS) 例3-12:(匹配查询) 求姓名是以“李”打头的学生。SELECT SNAME FROM Student WHERE SNAME LI

26、KE 李% 例3-13:(匹配查询) 求姓名中含有“志”的学生。SELECT SNAME FROM Student WHERE SNAME LIKE %志% 例3-14:(匹配查询) 求姓名长度至少是三个汉字且倒数第三个汉字必须是“马”的学生。SELECT SNAME FROM Student WHERE SNAME LIKE %马_ 例3-15:(匹配查询) 求选修课程001或003,成绩在80至90之间,学号为96xxx的学生的学号、课程号和成绩。SELECT SNO,CNO,SCORE FROM Score WHERE CNO IN (001,003) AND SCORE BETWEEN

27、 80 AND 90 AND SNO LIKE 96% 例3-16:(匹配查询) 求课程名中包含 _ 字符的课程号、课程名和学时数。SELECT CNO,CNAME,CTIME FROM Course WHERE CNAME LIKE %A_% ESCAPEA 例3-17:(涉及空值查询) 求缺少学习成绩的学生的学号和课程号。SELECT SNO,CNO FROM Score WHERE SCORE IS NULL 例3-18:(控制行的显示顺序) 求选修003课程或004课程的学生的学号、课程号和分数,要求按课程号升序、分数降序的顺序显示结果。SELECT * FROM Score WHER

28、E CNO IN(003,004) ORDER BY CNO ,SCORE DESC 例3-19:(组函数) 求学生总人数。SELECT COUNT(*) FROM Student 例3-20:(组函数) 求选修了课程的学生人数。SELECT COUNT(DISTINCT SNO) FROM Score 例3-21:(组函数) 求计算机系学生的平均年龄。SELECT AVG(SAGE) FROM Student WHERE SDEPT=CS 例3-22:(组函数) 求选修了课程001的最高、最低与平均成绩。SELECT MAX(SCORE),MIN(SCORE),AVG(SCORE) FROM

29、 Score WHERE CNO=001 例3-23:(分组查询) 求各门课程的平均成绩与总成绩。SELECT AVG(Score),SUM(SCORE) FROM Score GROUP BY CNO 例3-24:(分组查询) 求各系、各班级的人数和平均年龄。SELECT COUNT(SNO),AVG(SAGE) FROM Student GROUP BY SDEPT,SCLASS 例3-27:(分组查询) 求学生人数不足3人的系及其相应的学生数。 SELECT SDEPT,COUNT(SNO) FROM Student GROUP BY SDEPT HAVING COUNT(SNO)90

30、OR SCOREANY(SELECT SAGE FROM Student WHERE SDEPT=MA) AND SDEPTMA 例3-37:(子查询ALL) 求比数学系中全体学生年龄大的学生的姓名和系。SELECT SNAME,SDEPT FROM Student WHERE SAGEALL(SELECT SAGE FROM Student WHERE SDEPT=MA) AND SDEPTMA 例3-38:(子查询EXISTS) 求选修了课程004的学生的姓名和系。 SELECT SNAME FROM STUDENT WHERE EXISTS ( SELECT * FROM SCORE W

31、HERE CNO=004) 例3-39:(返回多列的子查询) 求与 李丽 同系且同龄的学生的姓名和系。 SELECT SNAME,SDEPT FROM Student WHERE SDEPT=( SELECT SDEPT FROM Student WHERE SNAME=李丽 ) AND SAGE=( SELECT SAGE FROM Student WHERE SNAME=李丽 ) 例3-40:(多个子查询) 求与 黎明 同系,且年龄大于 李丽 的学生的信息。SELECT * FROM Student WHERE SDEPT IN( SELECT SDEPT FROM Student WHE

32、RE SNAME=黎明) AND SAGE=( SELECT SAGE FROM Student WHERE SNAME=李丽) 例3-41:(子查询中使用表连接) 求数学系中年龄相同的学生的姓名和年龄。SELECT X.SNAME,X.SAGE FROM Student X,Student Y AND X.SDEPT=MA AND Y.SDEPT=MA 例3-42:(连接或嵌套查询) 检索至少选修王成刚老师所授课程中一门课程的女学生姓名。SELECT SNAME FROM Student WHERE SNO IN( SELECT SNO FROM SCORE WHERE CNO IN ( S

33、ELECT CNO FROM Teach WHERE TNAME=王成钢) AND SSEX=女 ) 例3-43:(嵌套与分组查询) 检索选修某课程的学生人数多于3人的教师姓名。SELECT TNAME FROM TEACH WHERE CNO IN ( SELECT CNO FROM SCORE GROUP BY CNO HAVING 3AVG(SCORE) 例3-49:(相关子查询) 查询被一个以上的学生选修的课程号。select CNO from COURSEwhere exists(select * from SCORE group by CNOhaving count(SNO)1AN

34、D CNO=COURSE.CNO)例3-50:(相关子查询) 查询所有未选课程的学生姓名和所在系SELECT SNAME,SDEPT FROM STUDENTWHERE NOT EXISTS( SELECT * FROM SCORE WHERE SNO=STUDENT.SNO) 实验要求 对数据库表进行各种查询操作。 实验方法 将实验需求用SQL语句表示; 执行SQL语句; 查看执行结果,如果结果不正确,进行修改,直到正确为止。 实验总结 此次实验练习使用了SQL语句按所给要求在基本表里面进行查找,实验涉及到选择表中的若干列、不选择重复行、 选择表中的所有列、使用表达式、使用列的别名、比较大小

35、条件、确定范围条件、确定集合条件、匹配查询、空值查询、控制行的显示顺序、组函数、分组查询、连接查询、自身连接查询、外部连接查询、子查询、连接或嵌套查询、嵌套与分组查询、集合查询、相关子查询。使用SQL语句进行查询,首先要对查询的要求进行分析,这需要好的逻辑,能够正确分析问题,对于复杂的问题运用相关的查询语句逐层进行剖析,一步步整理出层次。在语句书写时应注意书写格式,这样能很清晰的看出语句的层次,这样也有利于修改以前对SQL语句掌握不熟练,通过这次试验,使我对查询语句有了更深的体会。在这之前,对相关子查询几乎不了解,通过这次试验,我已经基本掌握了。总而言之,这次上机实验,真是受益匪浅,让我学到了

36、很多东西。实验四:视图、授权控制与事务处理 实验日期 年 月 日 实验目的 通过实验进一步理解视图的建立和更新、数据库的权限管理和事务处理功能。 实验内容 4 SQL视图的定义与操纵:例4-1: (建立视图) 建立计算机系的学生的视图STUDENT_CS。CREATE VIEW STUDENT_CS AS SELECT * FROM Student WHERE SDEPT=CS 例4-2: (建立视图) 建立由学号和平均成绩两个字段的视图STUDENT_GR。CREATE VIEW STUDENT_GR(SNO,GAVG) AS SELECT SNO,AVG(score) FROM Score

37、 GROUP BY SNO 例4-3: (视图查询) 利用视图STUDENT_CS,求年龄大于19岁的学生的全部信息。SELECT * FROM STUDENT_CS WHERE SAGE19 例4-4: (视图查询) 利用视图STUDENT_GR,求平均成绩为88分以上的学生的学号和平均成绩。SELECT SNO,GAVG FROM STUDENT_GR WHERE GAVG88 例4-5: (视图更新) 利用视图STUDENT_CS,增加学生( 96006,张然,CS,02,男,19 )。INSERT INTO STUDENT_CS VALUES(96006,张然,CS,02,19,男)

38、例4-6: (视图更新) 利用视图STUDENT_CS,将学生年龄增加1岁。观察其运行结果并分析原因。UPDATE STUDENT_CS SET SAGE=SAGE+1 因为年龄是按照基本表直接得来的,不需要计算,可以直接更改 例4-7: (视图更新) 利用视图STUDENT_GR,将平均成绩增加2分。观察其运行结果并分析原因。UPDATE STUDENT_GR SET GAVG=GAVG+2因为平均成绩是按照基本表计算得来的,不可以直接更改 例4-8: (视图更新) 删除视图STUDENT_CS中学号为 96006 的学生的全部数据。DELETE FROM STUDENT_CS WHERE

39、SNO=96006 例4-9: (视图更新) 删除视图STUDENT_GR的全部数据。DELETE FROM STUDENT_GR WHERE 1!=2 例4-10:(删除视图) 删除视图STUDENT_CS和STUDENT_GR。DROP VIEW STUDENT_CS;DROP VIEW STUDENT_GR5 SQL数据控制语句:例5-1: (授权) 给左右邻近同学(用户)授予在表Student上的SELECT权限,并使这两个用户具有给其他用户授予相同权限的权限。GRANT SELECT ON Student TO U099074214WITH GRANT OPTION 例5-2: (授

40、权) 给邻近同学(用户)授予Teach表上的所有权限。GRANT ALL ON Teach TO U099074214 例5-3: (授权) 给所有用户授予Score表上的SELECT权限。GRANT SELECT ON Score TO PUBLIC 例5-5: (收回授权) 收回上面例子中的所有授予的权限。REVOKE SELECT ON Student FROM U099074214REVOKE ALL ON Teach FROM PUBLIC REVOKE SELECT ON Score FROM PUBLIC6 SQL事务处理: 例6-1: (事务回退) 将课程名称表中的 程序设计

41、课程学时数修改为80、微机原理 课程学时数修改为70学时,查询全部课程的总学时数后,取消所有修改(ROLLBACK)。再次查询全部课程的总学时数。注意比较分析两次查询的结果。 例6-2: (事务提交) 将课程名称表中的 程序设计 课程学时数修改为80、微机原理 课程学时数修改为70学时,查询全部课程的总学时数后,确认所有修改(COMMIT)。再次查询全部课程的总学时数。注意比较分析两次查询的结果。 实验要求 建立视图,视图查询,视图更新; 给某一或全部用户授权和收回授权; 事务回退,事务提交。 实验方法 将实验需求用SQL语句表示; 执行SQL语句; 查看执行结果,如果结果不正确,进行修改,直

42、到正确为止。 实验总结 本次实验学习对SQL的数据控制和事务处理,包括使用GTANT授予权限,REVOKE撤销权限,COMMIT事务提交,ROLLBACK事务提交。数据控制包括事务管理和并发控制,这是数据库的安全性和数据的完整性控制。授权的目的是使不同的用户对不同的数据对象有不同的存取权限。在事务处理中,在数据库增删改时,如果对数据库进行了误操作,在为提交数居前,可利用事务回退,返回操作,这样保护了数据的一致和完整。实验五:Oracle存储过程与触发器 实验日期 年 月 日 实验目的 通过实验进一步理解和掌握Oracle数据库的存储过程和触发器。 实验内容 4 存储过程与触发器:例7-1: (

43、存储过程) 创建一个显示学生总人数的存储过程。CREATE PROCEDURE STU_COUNT(N OUT NUMBER)AS BEGIN SELECT COUNT(*) INTO N FROM STUDENT;END;/SET SERVEROUTPUT ON;DECLARE SCOUNT NUMBER;BEGIN STU_COUNT(SCOUNT); dbms_output.put_line(SCOUNT=|SCOUNT);END;/例7-2: (存储过程) 创建显示学生信息的存储过程STUDENT_LIST,并引用STU_COUNT存储过程。create or replace procedure STUDENT_LISTas p1 Student.SNO%type;p2 Student.SNAME%type;p3 Student.SDEPT%type;p4 Student.SCLASS%type;p5 Student.SAGE%type;p6 Student.S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论