文档介绍:实验PLSQL程序设计
实验PLSQL程序设计
1 / 111
实验PLSQL程序设计
实验6PL/SQL程序设计
实验目的
掌握PL/SQL程序开发方法。
掌握储藏过程、函数、触发器、包的创办于调用。
实验要求
依照图BN;
(p_order_id||v_title||v_retail||);endLOOP;
endLOOP;
closec_ISBN;
endproc_get_orderinfoo;
/
实验PLSQL程序设计
实验PLSQL程序设计
3 / 113
实验PLSQL程序设计
创办一个储藏过程,以初版社名为参数,输出该初版社初版的所有图书的名称、ISBN、批发价格、零售价格信息。
createorreplaceprocedureproc_get_name(%type)
as
cursorc_orderidisselectorder_idfromorderswherecustomer_id=p_customer_id;%type;
cursorc_orderitemisselectISBN,sum(quantity)totalnumfromorderitemwhereorder_id=v_orderidgroupbyISBN;
%type;
begin
openc_orderid;
LOOP
fetchc_orderidintov_orderid;
exitwhenc_orderid%NOTFOUND;
forv_orderiteminc_orderitem LOOP
selecttitleintov_titlefrombookswhereISBN=;(p_customer_id||''||v_title||'的数量是
'||);
endLOOP;
endLOOP;
closec_orderid;
endproc_get_orderinfo;
/
setserveroutputon
declare
v_customernumber;
begin
v_customer:=&x;
proc_get_orderinfo(v_customer);
end;
/
创办一个储藏过程,输出每个客户订购的图书的数量、价格总数。createorreplaceprocedureproc_category_static
as
cursorc_all_categoryisselectdistinctcategoryfrombooks;
v_sum_costnumber;
begin
forv_each_categoryin c_all_categoryLOOP
selectsum(retail)intov_sum_costfrombookswhere
groupbycategory;
实验PLSQL程序设计
实验PLSQL程序设计
4 / 114
实验PLSQL程序设计
('种类为:'||||',
总价格为:
'||
实验PLSQL程序设计
实验PLSQL程序设计
11 / 1111
实验PLSQL程序设计
v_sum_cost);
ENDLOOP;
实验PLSQL程序设计
实验PLSQL程序设计
11 / 1111
实验PLSQL程序设计
endproc_category_static;
/
setserveroutputon
execproc_category_static;
/
创办一个储藏过程,输出销售数当前3名的图书的信息及销售名次。createorreplaceprocedureproc_category_static
as
cursorc_all_categoryisselectdistinctcategoryfrombooks;
v_sum_retailnumber;
begin
forv_each_categoryin c_all_categoryLOOP
selectsum(cost)intov_sum_retailfrombookswhere
groupbycategory;
('种类为:'||||', 数量为: