create or replace package pg_test is
--包:公开的:开放包体的程序名的定义,提供给外部访问
procedure pr_test;
function fn_test2(tablename in varchar2) return number;
end pg_test;
create or replace package body pg_test is
--包体:存放程序,私有的。
--定义了存储过程
procedure pr_test is
begin
--存储过程代码
Dbms_Output.put_line('这是输出的一句话');
--serveroutput 系统设置想 是否在命令窗口输出是 默认是off
--set serveroutput on; 打开系统输出为on
--只针对当前命令窗口有效
update student set ssex='男' where ssex='1';
commit;
Dbms_Output.put_line('修改数据成功');
end pr_test;
function fn_test2(tablename in varchar2) return number is
rtn number ;
begin
--通用的而获取表的数据行数的函数
--执行的语句不是固定的
EXECUTE IMMEDIATE' select count(1) from '|| tablename into rtn;
--'insert into student values (:1,:2)' using
return(rtn);
exception when others then
--处理异常
dbms_output.put_line('发生异常');
return(-1);
end fn_test2;
end pg_test;