sigleSchool 存储过程例1
CREATE OR REPLACE PROCEDURE SINGLSCHOOL
(
PICIID IN VARCHAR2
, SCHOOLID IN NUMBER
, SCHETYPE IN number
, SCHENAME OUT VARCHAR2
, ISCORE OUT VARCHAR2
, ISTHRE OUT VARCHAR2
, ISBASE OUT VARCHAR2
, ISONLINE OUT VARCHAR2
, TEACHTO OUT VARCHAR2
, CLASSCOUNT OUT VARCHAR2
, STHCOUNT OUT VARCHAR2
, SCHEID OUT VARCHAR2
) AS
--按照条件查询课程信息
SCHENAMETMP t_app_dic.f_dic_value%TYPE;
CORETMP t_app_dic.f_dic_value%TYPE;
THRETMP t_app_dic.f_dic_value%TYPE;
BASETMP t_app_dic.f_dic_value%TYPE;
ONLINETMP t_app_dic.f_dic_value%TYPE;
TEACHOTMP t_app_dic.f_dic_value%TYPE;
CLASCTMP NUMBER;
STUCTMP NUMBER;
SCHEIDTMP T_APP_SUB_SCHE.ID%TYPE;
cursor sches (SCHOOLID organization.id%type ,PICIID t_app_pici.id%type,SCHETYPE t_app_sub_sche.f_sche_type%type) is
select sche.f_sche_name,(select f_dic_value from t_app_dic where f_dic_num= sche.f_sche_core and f_dic_name='核心课程') ,
(select f_dic_value from t_app_dic where f_dic_num= sche.f_thre_prac and f_dic_name='理论/实践') ,
(select f_dic_value from t_app_dic where f_dic_num= sche.f_base_pro and f_dic_name='基础/专业') ,
(select f_dic_value from t_app_dic where f_dic_num= sche.F_ONLINE and f_dic_name='是否开网络课程') ,
(select f_dic_value from t_app_dic where f_dic_num= sche.F_TEACH_OBJE and f_dic_name='培养对象') ,
count(sc.f_class_id),sum(c.F_STU_COUNT),SCHE.ID
from t_app_sub_sche sche,t_app_sche_class sc,t_app_class c
where c.id(+)=sc.f_class_id and sche.id= sc.f_sche_id(+) and sche.f_validate = '0' and sche.f_subunit_code=(SCHOOLID||'') and sche.f_subunit_pici_pre = PICIID and sche.f_sche_type=SCHETYPE
group by SCHE.ID,sche.f_sche_name,sche.f_sche_core, sche.f_base_pro, sche.F_ONLINE, sche.F_TEACH_OBJE,sche.f_thre_prac;
BEGIN
SCHENAME:=' ';
ISCORE:=' ';
ISTHRE:=' ';
ISBASE:=' ';
ISONLINE:=' ';
TEACHTO:=' ';
CLASSCOUNT:=' ';
STHCOUNT:=' ';
SCHEID:=' ';
open sches(SCHOOLID,PICIID,SCHETYPE);
LOOP
fetch sches into SCHENAMETMP,CORETMP,THRETMP, BASETMP , ONLINETMP,TEACHOTMP, CLASCTMP, STUCTMP,SCHEIDTMP;
exit when sches%notfound;
SCHENAME:=SCHENAME||SCHENAMETMP||' ,';
ISCORE:=ISCORE||CORETMP||' ,';
ISTHRE:=ISTHRE||THRETMP||' ,';
ISBASE:=ISBASE||BASETMP||' ,';
ISONLINE:=ISONLINE||ONLINETMP||' ,';
TEACHTO:=TEACHTO||TEACHOTMP||' ,';
CLASSCOUNT:=CLASSCOUNT||CLASCTMP||' ,';
STHCOUNT:=STHCOUNT||STUCTMP||' ,';
SCHEID:=SCHEID||SCHEIDTMP||' ,';
end loop;
close sches;
DBMS_OUTPUT.PUT_LINE(SCHENAME||'::'||ISCORE||'::'||ISTHRE||'::'||ISBASE||'::'||ISONLINE||'::'||CLASSCOUNT||'::'||STHCOUNT||'::'||TEACHTO);
END SINGLSCHOOL;
sigleSchool 存储过程例1的更多相关文章
- sql server存储过程编程
存储过程是一组完成特定功能的SQL 语句集合,经编译后存储在数据库中. 存储过程作为一个单元进行处理并以一个名称来标识.它能向用户返回数据.向数据库表中写入或修改数据等操作. 用户通过指定存储过程 ...
- SQL语句(十八)—— 存储过程
存储过程 系统存储过程 自定义存储过程 扩展存储过程 一.创建存储过程 创建存储过程 --例1 USE SU GO Create Procedure SelProc AS Select * From ...
- Sql Server数据库设计高级查询
-------------------------------------第一章 数据库的设计------------------------------------- 软件开发周期: (1 ...
- 史上最全Oracle数据泵常用命令
本文转自https://blog.csdn.net/Enmotech/article/details/102848825 墨墨导读:expdp和impdp是oracle数据库之间移动数据的工具,本文简 ...
- Oracle数据泵常用命令
导读:expdp和impdp是oracle数据库之间移动数据的工具,本文简单总结了数据泵的常用命令,希望对大家有帮助. 前言 expdp和impdp是oracle数据库之间移动数据的工具.expd ...
- C#调用 Oracle 存储过程样例代码
-- 建表 CREATE TABLE sale_report ( sale_date DATE NOT NULL , sale_item VARCHAR(2) NOT NULL , ...
- Mysql的存储过程(以Mysql为例进行讲解)
我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储 在数据库中,用户通过指定存 ...
- MongoDB存储过程创建和使用一例
mongo的脚本是js语法,所以存储过程也是js语法. 创建: db.system.js.save( { _id: "saveAndCount", value : function ...
- Delphi 使用TAdoQuery执行存储过程的样例
procedure TCustomerForm.FindCustomerInfo;var strSql:string;begin // BL_HV_FindCustomerInfo 存储过程的名称 ...
随机推荐
- Express中使用mongodb存储session
express默认有队session的支持,但是是存储在内存中的. 我们可以使用mongodb来存储会话. 但是express的各个版本中对该功能的写法是不同的. Express 2.x: app.u ...
- (转)LR监控Linux系统性能计数器详解
从LR里面add measurement,填写linux机器的IP,出现所有unix/linux的计数器,包括cpu的,mem的,disk,network的.这里介绍几个常用的: (对于如何监控Lin ...
- (转)RabbitMQ消息队列(九):Publisher的消息确认机制
在前面的文章中提到了queue和consumer之间的消息确认机制:通过设置ack.那么Publisher能不到知道他post的Message有没有到达queue,甚至更近一步,是否被某个Consum ...
- PowerDesigner提示This data item is already used in a primary identifier.的处理
原文链接: http://blog.csdn.net/lopper/article/details/5293545 今天同事在编制一个数据库脚本的时候,提示了This data item is alr ...
- [javascript|基本概念|Unll]学习笔记
Uull类型的值:null(只有一个)|空对象指针|typeof操作符返回object 作用:一般用于对即将保存对象但不知具体对象的引用 特殊:null == undefined --> tru ...
- 关于java的转义字符
关于java的转义字符 我们都知道 String s="ad,dfjdlfs,df,s,dfl"; 执行 String re[]=s.split(&qu ...
- 《Mail电子邮件日志存储的管理》RedHat6.3——以一举三
我们都知道很多日志的模块都是放在这下面的 要是想修改或是添加其他服务的日志,怎么办?修改下面的配置文件 测试下是否ok 轮转日志和定位分析和分析日志汇总报告: 安装logwatch软件包,这个没啥说的 ...
- ExtJS实战 01——HelloWorld
前言 Extjs5的发布已经有些日子了,目前的最新稳定版本是Extjs5.1.0,我们可以在官方网站进行下载.不过笔者今天访问得到的是502Bad Gateway,原因可能是sencha的nigix没 ...
- linux下配置tomcat7 + solr4.9(续)--- 多核索引的配置
在上一篇文章中(详见http://www.cnblogs.com/bxljoy/p/3850263.html),我们已经介绍了tomcat+solr的索引服务器的配置,但是文中创建的服务器只能支持存储 ...
- php正则表达式总结第1弹
介绍几个我用到的php正则表达式 1. 一篇文章的链接,我需要去掉以 /hotels/打头的链接,可用下面正则 $content = preg_replace('/<a(.*?)href=&qu ...