CREATE OR REPLACE
PROCEDURE AddNewTuiFei
(
n_id T_MZTFSQ_JOB.id%TYPE, --唯一标识ID
n_mzh T_MZTFSQ_JOB.F_MZH%TYPE, --门诊号
n_jzkh T_MZTFSQ_JOB.F_JZKH%TYPE, --就诊卡号
n_hzxm T_MZTFSQ_JOB.F_HZXM%TYPE, --患者姓名
n_tfyy T_MZTFSQ_JOB.F_TFYY%TYPE, --退费原因
n_tfyp T_MZTFSQ_JOB.F_TFYP%TYPE, --退费药品/检查
n_applydate T_MZTFSQ_JOB.F_APPLYDATE%TYPE, --申请发起时间
n_mzlsh T_MZTFSQ_JOB.F_MZLSH%TYPE, --门诊流水号
n_totalprice T_MZTFSQ_JOB.F_TOTALPRICE%TYPE, --退费总价
n_createtime T_MZTFSQ_JOB.CREATE_TIME %TYPE, --创建时间
n_issend T_MZTFSQ_JOB.IS_SEND%TYPE --是否发送(默认为空,用作OA轮询判断)
)
AS
BEGIN
--向表中插入数据
INSERT INTO T_MZTFSQ_JOB(id,F_MZH,F_JZKH,F_HZXM,F_TFYY,F_TFYP,F_APPLYDATE,F_MZLSH,F_TOTALPRICE,CREATE_TIME,IS_SEND)
VALUES(n_id,n_mzh,n_jzkh,n_hzxm,n_tfyy,n_tfyp,n_applydate,n_mzlsh,n_totalprice,n_createtime,n_issend);
EXCEPTION
WHEN OTHERS Then
DBMS_OUTPUT.PUT_LINE('存储失败');
Rollback;
COMMIT;
END AddNewTuiFei;因为这个存储过程是给别的系统提供的,现在要让对方看是否执行成功,怎么添加一个返回值来判断?
PROCEDURE AddNewTuiFei
(
n_id T_MZTFSQ_JOB.id%TYPE, --唯一标识ID
n_mzh T_MZTFSQ_JOB.F_MZH%TYPE, --门诊号
n_jzkh T_MZTFSQ_JOB.F_JZKH%TYPE, --就诊卡号
n_hzxm T_MZTFSQ_JOB.F_HZXM%TYPE, --患者姓名
n_tfyy T_MZTFSQ_JOB.F_TFYY%TYPE, --退费原因
n_tfyp T_MZTFSQ_JOB.F_TFYP%TYPE, --退费药品/检查
n_applydate T_MZTFSQ_JOB.F_APPLYDATE%TYPE, --申请发起时间
n_mzlsh T_MZTFSQ_JOB.F_MZLSH%TYPE, --门诊流水号
n_totalprice T_MZTFSQ_JOB.F_TOTALPRICE%TYPE, --退费总价
n_createtime T_MZTFSQ_JOB.CREATE_TIME %TYPE, --创建时间
n_issend T_MZTFSQ_JOB.IS_SEND%TYPE --是否发送(默认为空,用作OA轮询判断)
)
AS
BEGIN
--向表中插入数据
INSERT INTO T_MZTFSQ_JOB(id,F_MZH,F_JZKH,F_HZXM,F_TFYY,F_TFYP,F_APPLYDATE,F_MZLSH,F_TOTALPRICE,CREATE_TIME,IS_SEND)
VALUES(n_id,n_mzh,n_jzkh,n_hzxm,n_tfyy,n_tfyp,n_applydate,n_mzlsh,n_totalprice,n_createtime,n_issend);
EXCEPTION
WHEN OTHERS Then
DBMS_OUTPUT.PUT_LINE('存储失败');
Rollback;
COMMIT;
END AddNewTuiFei;因为这个存储过程是给别的系统提供的,现在要让对方看是否执行成功,怎么添加一个返回值来判断?
解决方案 »
- oracle监听程序不支持服务 求大侠帮忙
- iSQL*Plus command问题
- ORA-32101 CANNOT CREATE OCI ENVIRONMENT
- 未找到提供程序.改程序可能未正常安装
- 编写一个触发器,当修改EMP表中的工资(SAL)时,保证10号部门不超过5000元,其他部门不超过7000元
- 求救!!dblink 问题,请帮帮我
- ora-12154:tns:无法处理服务名错误
- 查询从第20条到第30条的记录
- varchar(size)会不会真的占用空间?
- 谁有Oracle(for linux)版的,我在网上下载的安装时出现乱码!急,急!!!
- ERROR Unknown error when running consumer: (kafka.tools.ConsoleConsumer$)
- oracle 11g 行级触发器中:old与:new后面的字段名能不能是动态的?
PROCEDURE AddNewTuiFei
(
n_id T_MZTFSQ_JOB.id%TYPE, --唯一标识ID
n_mzh T_MZTFSQ_JOB.F_MZH%TYPE, --门诊号
n_jzkh T_MZTFSQ_JOB.F_JZKH%TYPE, --就诊卡号
n_hzxm T_MZTFSQ_JOB.F_HZXM%TYPE, --患者姓名
n_tfyy T_MZTFSQ_JOB.F_TFYY%TYPE, --退费原因
n_tfyp T_MZTFSQ_JOB.F_TFYP%TYPE, --退费药品/检查
n_applydate T_MZTFSQ_JOB.F_APPLYDATE%TYPE, --申请发起时间
n_mzlsh T_MZTFSQ_JOB.F_MZLSH%TYPE, --门诊流水号
n_totalprice T_MZTFSQ_JOB.F_TOTALPRICE%TYPE, --退费总价
n_createtime T_MZTFSQ_JOB.CREATE_TIME %TYPE, --创建时间
n_issend T_MZTFSQ_JOB.IS_SEND%TYPE, --是否发送(默认为空,用作OA轮询判断)
ret_code out varchar2(1),
ret_desc out varchar2(100)
)
AS
BEGIN
--向表中插入数据
INSERT INTO T_MZTFSQ_JOB(id,F_MZH,F_JZKH,F_HZXM,F_TFYY,F_TFYP,F_APPLYDATE,F_MZLSH,F_TOTALPRICE,CREATE_TIME,IS_SEND)
VALUES(n_id,n_mzh,n_jzkh,n_hzxm,n_tfyy,n_tfyp,n_applydate,n_mzlsh,n_totalprice,n_createtime,n_issend);
EXCEPTION
WHEN OTHERS Then
ret_code := 0;
DBMS_OUTPUT.PUT_LINE('存储失败');
Rollback;
COMMIT;
END AddNewTuiFei;改成这样会报错
你那个ret_code和out之间的空格是全角字符改成半角就行了。
PROCEDURE AddNewTuiFei(In_Data IN VARCHAR2, -- 传入数据
Out_Errorcd OUT VARCHAR2, -- 提示码
Out_Errortx OUT VARCHAR2 -- 提示信息
) IS n_id T_MZTFSQ_JOB.id%TYPE, --唯一标识ID
n_mzh T_MZTFSQ_JOB.F_MZH%TYPE, --门诊号
n_jzkh T_MZTFSQ_JOB.F_JZKH%TYPE, --就诊卡号
n_hzxm T_MZTFSQ_JOB.F_HZXM%TYPE, --患者姓名
n_tfyy T_MZTFSQ_JOB.F_TFYY%TYPE, --退费原因
n_tfyp T_MZTFSQ_JOB.F_TFYP%TYPE, --退费药品/检查
n_applydate T_MZTFSQ_JOB.F_APPLYDATE%TYPE, --申请发起时间
n_mzlsh T_MZTFSQ_JOB.F_MZLSH%TYPE, --门诊流水号
n_totalprice T_MZTFSQ_JOB.F_TOTALPRICE%TYPE, --退费总价
n_createtime T_MZTFSQ_JOB.CREATE_TIME %TYPE, --创建时间
n_issend T_MZTFSQ_JOB.IS_SEND%TYPE --是否发送(默认为空,用作OA轮询判断)BEGIN
--向表中插入数据
INSERT INTO T_MZTFSQ_JOB(id,F_MZH,F_JZKH,F_HZXM,F_TFYY,F_TFYP,F_APPLYDATE,F_MZLSH,F_TOTALPRICE,CREATE_TIME,IS_SEND)
VALUES(n_id,n_mzh,n_jzkh,n_hzxm,n_tfyy,n_tfyp,n_applydate,n_mzlsh,n_totalprice,n_createtime,n_issend);
Out_Errorcd := 'SUCC';
Out_Errortx := '存储成功';
EXCEPTION
WHEN OTHERS Then
DBMS_OUTPUT.PUT_LINE('存储失败');
Rollback;
Out_Errorcd := 'FAIL';
Out_Errortx := '存储失败';
COMMIT;
END AddNewTuiFei;