oracle存储过程语法
2015-10-23 16:15
555 查看
create or replace procedure lis_zhifang_return_confirm(barcode in varchar2,deptcode1 in varchar2) as begin update clc_recipe r set r.deptcode=deptcode1 , r.deptname='检验科' where r.labcode=barcode; commit; end;
CREATE OR REPLACE PROCEDURE peis_transmitresult( barcode in varchar2, --条码号 excdoctor in varchar2 , --执行医生ID excdoctorname in varchar2, --执行医生name excdate in date ,--执行日期 result in varchar2 , --结果值 indid in varchar2 , --小项id indname in varchar2 , --小项name unnormal in varchar2 , --正异常标志 sn in varchar2 , --小项序号 maxval in varchar2 , --结果最大值 minval in varchar2 , --结果最小值 resultunit in varchar2 , --结果单位 range in varchar2 --参考范围 ) as --变量区 v_hosnum varchar2(6) :=''; --医院编码 v_itemuuid varchar2(20) :='';--组合的uuid v_examid varchar2(15) :='';--预约单ID v_pexamid varchar2(15) :='';--体检编号 v_itemcode varchar2(15) :='';--项目id v_itemname varchar2(50) :='';--项目name v_excdept varchar2(10) :='';--执行科室id v_excdeptname varchar2(10) :='';--执行科室name v_excdoctor varchar2(10) :=excdoctor;--执行医生id v_excdoctorname varchar2(20) :=excdoctorname;--执行医生name v_excdate date :=excdate ; --执行日期 v_result varchar2(30) :=result ; --执行日期 v_indid varchar2(30) :=indid ; --小项id v_indname varchar2(30) :=indname ; --小项name v_unnormal varchar2(30) := unnormal ; --正异常标志 v_sn varchar2(10) := sn ; --小项序号 v_maxval varchar2(10) := maxval ; --结果最大值 v_minval varchar2(10) := minval ; --结果最小值 v_resultunit varchar2(10) := resultunit ; --单位 v_range varchar2(10) := range ; --参考范围 v_count number :=0; --未传回结果的数量 BEGIN select a.hosnum,a.itemuuid,a.examid,a.pexamid,a.itemcode,a.itemname,a.excdept,a.excdeptname into v_hosnum,v_itemuuid,v_examid,v_pexamid,v_itemcode,v_itemname,v_excdept,v_excdeptname from pexam_items_title a where a.tmcode=barcode; --插入结果表 insert into pexam_results (hosnum, examid, pexamid, excdept, excdeptname, excdoctor, excdoctorname, excdate, stringvalue, numvalue, result, comid, comname, indid, indname, examtype, unnormal, itemuuid, sn, maxval, minval, resultunit, range, parentid) values (v_hosnum, v_examid, v_pexamid, v_excdept, v_excdeptname, v_excdoctor, v_excdoctorname , v_excdate, '', '', v_result, v_itemcode, v_itemname, v_indid, v_indname, '', v_unnormal, v_itemuuid, v_sn, v_maxval, v_minval, v_resultunit, v_range, ''); commit; --判断是否组合下面的小项结果都有了, --如果都有了 就回执这个组合 保存为已完成。 否则不回执。 select count(*) count into v_count from pexam_results c where c.pexamid= v_pexamid and c.itemuuid=v_itemuuid and c.excdate is null ; IF v_count=0 THEN BEGIN update pexam_items_title a set a.excdate=v_excdate,a.excdoctorid=v_excdoctor, a.excdoctorname=v_excdoctorname,a.deptSum='' where a.hosnum=v_hosnum and a.itemuuid=v_itemuuid; commit; END; END IF; END peis_transmitresult;
输出语句:
DBMS_OUTPUT.PUT_LINE('GG在这里。。');
grant execute on peis_transmitresult to lis_zhifang;
相关文章推荐
- Oracle中TO_DATE格式
- Oracle 自动同步数据脚本
- 使用wget下载Oracle的JDK
- oracle——pl/sql 查询中文乱码
- PL/SQL连接oracle
- oracle——存储过程分页
- oracle 字母数字混合排序
- 像查看本地Oracle数据一样查看远程Oracle数据-----Oracle database link创建和使用
- 今天就注册上海ORACLE2用户组014在峰会酒吧!
- Oracle存储过程创建及调用
- 基于Oracle的EntityFramework的WEBAPI2的实现(三)—— 建立APIController及设置返回类型JSON、XML等
- Oracle 生成合并行报表
- Windows2008 R2上完全卸载Oracle操作步骤
- Windows2008 R2上完全卸载Oracle操作步骤
- Oracle 查看DBLink密码方法(适用于Oracle10G以下版本)
- Oracle 11g_sql
- Oracle timestamp类型转换成date类型
- Hibernate 使用原生SQL查询oracle数据库显示问题(char,Date)
- oracle 第12章 归档日志文件
- oracle中 decode()函数简介