create or replace procedure sPro_CalculatePlanResult
(ps_YMD in varchar2, --日期
pi_ModeID in integer, --方案编号
pi_Result out integer, --结果标识
ps_Message out varchar2 --计算结果信息
)
/*===============================================
标题 sPro_CalculatePlantResult
功能 根据保存的计划方案结果,计算相关统计量
参数
作者 xx 2008-09-17
===============================================*/
--With Encryption
As
vs_Sql varchar2(2000);
vi_point integer;
--vi_PlantID integer;
--vi_CapacityTypeID integer;
--vs_YMD varchar2(8);
Begin
pi_Result:=-1;
ps_Message:='计算发电计划结果出错...';
/*=================1全网计划出力信息表=================*/
--计算系统各点平均煤耗率,平均电价,机组平均负荷率
--1根据燃煤机组电量计算平均煤耗率
for vi_Point in 0..95
loop
select 'update TB_FORE_SYSTEM_INFO '
||'set AvgMeiHao=SumMeiHao*1000/(select sum('||FieldName||') Firedayenergy from TB_FORE_UNIT_POWER a,tb_Bas_unit b'
||' where a.unitid=b.id and b.typeid=1 '
||' and a.ymd='||ps_YMD||' and modeid='||pi_ModeID||' and type=9)'
||' where ymd='||ps_YMD||' and modeid='||pi_ModeID||' and Power>0 and type=9 and point='||vi_Point
into vs_Sql from tb_Bas_point where periodid=vi_Point;
execute immediate(vs_sql);
end loop;
update TB_FORE_SYSTEM_INFO a
set AvgPrice=Cost*10000/Power
where ymd=ps_YMD and modeid=pi_ModeID and Power>0 and type=9;
update TB_FORE_SYSTEM_INFO a
set AvgRate=Power/RunCapacity
where ymd=ps_YMD and modeid=pi_ModeID and RunCapacity>0 and type=9;
/*=================退出=================*/
pi_Result:=1;
ps_Message:='计算发电计划结果成功';
return;
exception when others then
begin
pi_Result:=-1;
ps_Message:='计算发电计划结果出错:'||sqlerrm;
return;
end;
end sPro_CalculatePlanResult;
分享到:
相关推荐
### SQL存储过程书写格式规范 #### 标题与描述概览 本文主要介绍SQL存储过程的书写格式规范,并提供一个具体的示例供读者参考。通过本文的学习,可以帮助开发者更好地理解和应用存储过程,确保代码的规范性和可读性...
### SQL存储过程格式详解 SQL存储过程是一种预编译的SQL语句集合,可以在数据库中创建并保存,供外部程序调用。它们提供了一种封装和重用代码的方法,可以包含复杂的逻辑流程控制,如循环、条件判断等,从而增强...
MS-SQL存储过程格式化工具是一款专为Microsoft SQL Server数据库设计的应用程序,旨在帮助数据库管理员和开发人员优化和规范化他们的SQL脚本,尤其是存储过程的编写格式。此工具的主要功能是将杂乱无章的SQL代码自动...
SQL Pretty Printer 语句格式化 存储过程格式化 破解版 绝对可用
DB2存储过程标准语法格式及各参数的详细介绍(附实例) [内容来自互联网]
1. 存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。 2. 当对数据库进行复杂操作时(如对多个表进行 Update、...
本文将详细解释Oracle存储过程的基本语法格式及其主要组成部分。 首先,创建存储过程的基本结构如下: ```sql CREATE OR REPLACE PROCEDURE 存储过程名字( 参数 1 IN NUMBER, -- 输入参数,类型为NUMBER 参数 2 ...
根据当天日期生成流水单号存储过程 格式为 年月日+'0001'
在帆软报表的设计过程中,当用户尝试调用一个Oracle数据库中的存储过程时,可能会遇到一个问题:即使存储过程本身并未声明任何输入或输出参数,设计界面仍会提示需要提供一个名为"storeParameter1"的参数。...
用户自定义的存储过程是我们所指的存储过程,常用格式为 Create procedure procedue_name [@parameter data_type][output] [with]{recompile|encryption} as sql_statement。 在优化存储过程时,需要注意 Parameter...
在SQL Server中,存储过程是一种预编译的SQL语句集合,它允许开发人员封装一组复杂的操作,并在需要时重复调用。存储过程对于数据库管理、数据处理和性能优化具有重要意义。本文主要介绍如何在SQL Server中导出和...
根据提供的文档标题、描述、标签以及部分内容,我们可以总结出以下关于存储过程的创建与使用的相关知识点。 ### 一、存储过程的基本概念 存储过程是一种在数据库中存储并编译好的SQL程序,它能够接受输入参数,...
Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者编写一系列SQL语句和PL/SQL块,形成可重复使用的代码单元。这篇博客“oracle存储过程-帮助文档”可能提供了关于如何创建、调用和管理Oracle存储过程...
存储过程内部构造了复杂的SQL语句,首先通过一系列字符串操作和XML转换,将输入的关键字转化为适合全文搜索的格式。接着,通过`ContainsTable`函数对多个列进行搜索,包括`strSortMobileOperating`、`...
在文件名称“查询存储过程.txt”中,我们可以推测这是文档格式,可能包含这些存储过程的详细说明、使用示例或者创建脚本。用户可以通过阅读此文本文件了解每个存储过程的作用、参数和使用方法。 在实际应用中,使用...
)}`是调用存储过程的占位符格式。`registerOutParameter`方法用于定义输出参数的类型。 除了存储过程,数据库脚本通常也包含创建表、插入数据、更新数据、删除数据等基本的SQL操作。在`Demo.sql`文件中,可能有这些...
首先,"C# 导出存储过程"是指通过编写C#代码,调用数据库API(如ADO.NET或Entity Framework)来获取数据库中的存储过程信息,并将其导出到某种格式(例如XML、JSON或文本文件)。这有助于数据库管理、备份、迁移和...
然而,存储过程也存在性能缺陷,例如首次执行时的磁盘读取开销、ASCII格式到二进制的转换时间以及潜在的重新优化需求。 #### 实际应用场景探讨 在实际应用中,存储过程可以应用于多种场景,例如: - **数据类型...
实验六的目的是深入理解并掌握SQL Server中的存储过程和触发器。存储过程是预编译的SQL语句集合,它们可以被多次调用,提高了代码的重用性和执行效率,同时降低了网络流量。以下是关于存储过程和触发器的详细解释: ...