声明一个包UserPack:
包中内容有一个强游标、一个弱游标和一个函数和两个存储过程,分别是:
1)一个函数user_fun,其中一个输入参数(字符类型),是年度,返回值是弱游标;
要求用静态SQL
2)一个存储过程user_outpro,其中两个输入参数(字符类型),分别是年度和用户编码,一个输出参数(字符类型),是用户姓名;
要求使用动态SQL语句,用自定义异常(两种:没有数据和多笔记录的异常).
3)一个存储过程user_cursorpro,其中一个参数(字符类型),是年度,返回值是强游标,操作用的表是users,表中的字段是year(年度),userid(用户编码),username(用户姓名)。
要求使用动态SQL语句
包中内容有一个强游标、一个弱游标和一个函数和两个存储过程,分别是:
1)一个函数user_fun,其中一个输入参数(字符类型),是年度,返回值是弱游标;
要求用静态SQL
2)一个存储过程user_outpro,其中两个输入参数(字符类型),分别是年度和用户编码,一个输出参数(字符类型),是用户姓名;
要求使用动态SQL语句,用自定义异常(两种:没有数据和多笔记录的异常).
3)一个存储过程user_cursorpro,其中一个参数(字符类型),是年度,返回值是强游标,操作用的表是users,表中的字段是year(年度),userid(用户编码),username(用户姓名)。
要求使用动态SQL语句
强游标和动态SQL怎么结合的,这个貌似会有问题的。
TYPE rec_consultclass IS RECORD
(
YEAR TYPE USER.YEAR%, --年度
userid TYPE USER.userid% , --用户编码
username TYPE USER.username% --用户姓名
);
TYPE big_cur is REF CURSOR RETURN rec_consultclass;
TYPE small_cur IS REF CURSOR;
function transform_chr
(
inputDate in DATE --时间
)
return small_cur;
PROCEDURE user_outpro
{
inputDate IN DATE, --时间
userId IN VARCHAR2, --id
userName OUT VARCHAR2 --姓名
};
PROCEDURE user_cursorpro
{
inputDate IN DATE --时间
outcur OUT rec_consultclass
};
END;/