问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据库存储过程怎么调用存储过程

发布网友 发布时间:2022-05-02 11:19

我来回答

2个回答

懂视网 时间:2022-05-02 15:40

/***Manager***/CREATE OR REPLACE PROCEDURE "GZAPP_09"."SP_OLAP_V_BUILDINGTYPE"("P_DATE" IN DATE)
AUTHID DEFINER
IS
/*=============================================================
*功能说明:房屋类型分析(高层楼宇,多层楼宇,临时棚屋,其它)
* 统计市级别,行政区,街镇,居委会
* 入口参数:统计时间
* 出口参数:无
* 创建人及时间: dfb 20160922
* 修改人及时间:
*============================================================*/
v_sqlcode number;
v_sqlerrm varchar2(4000);
v_begintime varchar2(20);
v_endtime varchar2(20);
v_fwdlx varchar2(10);
v_sql varchar2(5000);
BEGIN
v_begintime:=to_char(sysdate,‘yyyy/mm/dd hh24:mi:ss‘);
EXECUTE IMMEDIATE ‘TRUNCATE TABLE TN_OLAP_V_BUILDINGTYPE_TMP1‘;
delete from OLAP_V_BUILDINGTYPE;
commit;

insert into TN_OLAP_V_BUILDINGTYPE_TMP1(
TJQY,
QYDM,
FWLX01 ,
FWLX02 ,
FWLX03 ,
FWLX04 )

SELECT TJQY,
qydm,
FWLXGCLY FWLX01,--高层楼宇类型栋数
FWLXDCLY FWLX02,--低层楼宇类型栋数
FWLXLSPW FWLX03,--临时棚屋类型栋数
FWLXQT FWLX04 --其他类型栋数
FROM T_STAT_CZWD
where tjrq=p_date
and bblx=‘M‘;
COMMIT;

-- 01-04类房屋栋类型
for fwdlx in 1 .. 4 loop

if fwdlx < 10 then
v_fwdlx := ‘0‘ || fwdlx;
else
v_fwdlx := fwdlx;
end if;

v_sql :=‘INSERT INTO OLAP_V_BUILDINGTYPE
( BUITYPEDM,--房屋栋类型代码
BUITYPEMC,--房屋栋类型名称
TJQY,--统计区域
QYDM,--区域代码
QYMC,--区域名称
XZQDM,--行政区代码
XZQ, --行政区名称
JZDM ,--街镇代码
JZ, --街镇名称
JWHDM,--居委会代码
JWH , --居委会名称
AMOUNT--数量
)
select t.FWDLX,
a.mc,
t.tjqy,
t.qydm,
case when tjqy=‘‘SHIJB‘‘ THEN ‘‘全市‘‘
when tjqy=‘‘XZQ‘‘ then b.xzq
when tjqy=‘‘JZ‘‘ THEN b.jz
when tjqy=‘‘JWH‘‘ THEN b.jwh
end qymc,
b.xzqdm,
b.xzq,
b.jzdm,
b.jz ,
b.jwhdm,
b.jwh,
t.amount
from (select ‘‘‘||v_fwdlx||‘‘‘ FWDLX,qydm ,FWLX‘||v_fwdlx||‘ amount,tjqy from TN_OLAP_V_BUILDINGTYPE_TMP1) t,
--(select * from t_xtzd where dmlx=‘‘FWLX‘‘) a,
(select BUITYPEDM dm,BUITYPEMC mc,id from OLAP_MEASURE_BUILDINGTYPE) a,--把系统字典表改成这个维表 修改于2016.10.11 dfb
OLAP_V_LOCALAREA b
where t.FWDLX=a.id
and t.qydm=b.qydm ‘;
execute immediate v_sql;
end loop;

v_endtime:=to_char(sysdate,‘yyyy/mm/dd hh24:mi:ss‘);
--记录程序执行开始时间和结束时间
insert into T_LOG(pro_name,tj_date,begin_time,end_time,run_result) values(‘SP_OLAP_V_BUILDINGTYPE‘,p_date,v_begintime,v_endtime,‘Y‘);
commit;
--异常处理
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
v_sqlcode :=sqlcode;
v_sqlerrm :=substr(sqlerrm, 1, 2000);
insert into T_LOG(pro_name,err_time,err_code,err_infor,run_result,tj_date) values(‘SP_OLAP_V_BUILDINGTYPE‘,sysdate,v_sqlcode,v_sqlerrm,‘N‘,p_date);
commit;
DBMS_OUTPUT.PUT_LINE(SUBSTR(SQLERRM, 1, 200));

END SP_OLAP_V_BUILDINGTYPE;

 

------------------------------------------------存储过程调用-----------------------------------------------

/***Manager***/CREATE OR REPLACE PROCEDURE "GZAPP_09"."PKG_STAT_DAY"("P_DATE" IN DATE)
AUTHID DEFINER

IS
/*=============================================================
*功能说明:日报表调度汇总
* 入口参数:统计时间
* 出口参数:无
* 创建人及时间: dfb 20160906
* 修改人及时间:
*============================================================*/
v_sqlcode number;
v_sqlerrm varchar2(4000);
v_begintime varchar2(20);
v_endtime varchar2(20);
BEGIN

v_begintime:=to_char(sysdate,‘yyyy/mm/dd hh24:mi:ss‘);

SP_OLAP_V_BUILDINGTYPE(p_date);
v_endtime:=to_char(sysdate,‘yyyy/mm/dd hh24:mi:ss‘);
--记录程序执行开始时间和结束时间
insert into T_LOG(pro_name,tj_date,begin_time,end_time,run_result) values(‘PKG_STAT_DAY‘,p_date,v_begintime,v_endtime,‘Y‘);
commit;
--异常处理
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
v_sqlcode :=sqlcode;
v_sqlerrm :=substr(sqlerrm, 1, 2000);
insert into T_LOG(pro_name,err_time,err_code,err_infor,run_result,tj_date) values(‘PKG_STAT_DAY‘,sysdate,v_sqlcode,v_sqlerrm,‘N‘,p_date);
commit;
DBMS_OUTPUT.PUT_LINE(SUBSTR(SQLERRM, 1, 200));

END PKG_STAT_DAY;

达梦数据库存储过程及存储过程调用

标签:creat   修改   行政区   处理   begin   auth   tput   bst   replace   

热心网友 时间:2022-05-02 12:48

在存储过程里用exec执行另一存储过程名及它需要的参数就可以了
如 exec abc '1', '2' (abc 是存储过程的名字, '1','2' 是它的参数)
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
罗马全面战争怎么样提高元老院评价? 半夜家中镜匾忽然碎了 镜子忽然碎掉怎么解 化能异养型微生物分类 如何判断自养微生物与异养微生物 如何得知某微生物是否为哪种氨基酸的异养型微生物。 滨州市北海振宇电子科技有限责任公司怎么样? 北京振宇科技有限公司怎么样? 上海振宇化工科技有限公司经营范围 商业医保是否值得购买? mac系统怎样启用FTP服务 sudo apt-get install mac-ithemes-v3 提示没有 树莓派,mac终端输入sudo apt-get upgrade的时候显示e:子进程&#47; usr &#47; macbook 有没有类似 Ubuntu 下 apt-get 功能的命令,vim有没有,gcc编译器怎么按? 内核在哪里? 为什么Mac OS X上apt-get类型的软件包管理器不流行 6月16号我没美团借款,怎么会有借款额度,还要我还款? 白醋可以美白吗,怎样用 请问用什么样白醋洗脸可以美白白醋是怎么用的 怎样正确使用白醋洗脸美白效果最佳最明显 支付宝扫码支付怎么做到一丝痕迹都没有啊?就是比如扫码支付300 让它显示不出来给某人-300的账单 煮丸子需要多长时间 手机支付宝转账痕迹怎样删除 - 信息提示 《黑魂3》流放者大刀质变什么属性? 黑暗之魂3 咒术师和法师怎么选择 黑魂3力气有什么用 黑魂3能带所有武器,法术,奇迹,咒术的最低属性要求? 黑暗之魂3等级上限有多少级 等级上限及二周目分析 《黑魂3》为什么要压120级? 黑魂3为什么要压120级? 为什么Mac OS X上apt 如何优雅地在Mac OS上cross complie 运行在linux上的程序 Mac 下有类似 Ubuntu 的 apt 在mac下运行VMware提示找不到可以连接的有效对等进程? 吃饺子是什么意思网络 网络上[请你吃饺子]是什么意思? 饺子是什么意思网络 eat dumplings是什么意思 男朋友约我去他家吃水饺,什么意思?可以去吗? 吃饺子粤语怎么说 大年初一吃饺子的歇后语是什么? 面包车遥控钥匙丢了怎么办?怎么解除遥控锁,以后不用遥控了!能配一个不带遥控的钥匙吗 梦见自己的好兄弟要杀自己是吉是凶? 梦见身边的兄弟打死了别人 如何使用QQ影音截取IE浏览器里视频的音乐? 快递用户想取消订单该如何操作 申通快递菜鸟包裹侠怎么打退单手机版 海信洗衣机XQB70-C6201故障代码显示UN是什么故障? 海尔洗衣机Un 滚筒洗衣机的高速脱水问题?