Oracle:儲存過程的使用
阿新 • • 發佈:2018-11-26
Oracle:儲存過程的使用
以sys身份登入,建立使用者c##zs,密碼111,分配dba角色
以c##zs身份登入,匯入資料表
編寫儲存過程,根據學生學號,查詢出學生所選課程成績等級,
列印結果示例:
1801001 張三 Oracle A
1801001 張三 Java C
參考程式碼:
create or replace procedure p_studentid(p_sid in char) is v_grade number; begin for student in( select s.student_id,s.sname,c.cname,sc.grade from student s, sc,course c where s.student_id = sc.student_id and sc.course_id = c.course_id and s.student_id = p_sid )loop v_grade := student.grade; if v_grade >= 90 then dbms_output.put_line(student.student_id || student.sname || student.cname || 'A'); elsif v_grade >= 80 then dbms_output.put_line(student.student_id || student.sname || student.cname || 'B'); elsif v_grade >= 70 then dbms_output.put_line(student.student_id || student.sname || student.cname || 'c'); elsif v_grade >=60 then dbms_output.put_line(student.student_id || student.sname || student.cname || 'D'); else dbms_output.put_line(student.student_id || student.sname || student.cname || 'E'); end if; end loop; end p_studentid; set serveroutput on begin p_studentid('1801001'); end;