pl_sql如何执行oracle存储过程

author author     2023-04-11     392

关键词:

create or replace procedure area
begin
select * from ods_area;
end
execute area;--执行

参考技术A 要成功执行这个存储过程,你需要注意几点:
1.select * from ods_area; 不能直接在pl/sql 中作为语句执行。
应该用 select 字段 into plsql变量 from 表名;
的形式来获取表中的数据,保存到plsql变量中。

2. 存储过程的语法格式为:
create or replace procedure area
is
--变量声明;
begin
--过程主体;
end area;
3. 如果存储过程代码无误,可以通过 "/" 来执行代码,编译存储过程。
4.通过exec 或 execute 来调用编译后的存储过程。

例如:

-- 创建procedure:
create or replace procedure area
is
num number ;
v_areaRecord dual%ROWTYPE;
begin
--例子1
select * into v_areaRecord from dual;
--例子2
select 12345 into num from dual;
end area;
/
-- 通过 / 执行;

--调用
exec area;本回答被提问者和网友采纳
参考技术B PLSQL Developer里面直接就有撒,用法如下:
declare
-- Non-scalar parameters require additional processing
env sys.odcienv;
begin
-- Call the procedure
sys.odcienvdump(env => env);
end;
参考技术C 在sqlplus中执行方法如下
1.(重要)在sqlplus中执行如下命令(只有这样才可以看到输出结果):
set serverout on;
2.创建
3.执行(1,2顺序可以调换)

在plsql developer中就简单了,可以在左侧列表中找到procedure,找到相应存储过程,右键,。。。等等方法

如何通过数据库链接执行 Oracle 存储过程

】如何通过数据库链接执行Oracle存储过程【英文标题】:HowtoexecuteanOraclestoredprocedureviaadatabaselink【发布时间】:2010-09-1910:33:47【问题描述】:我可以通过数据库链接调用Oracle中的存储过程吗?数据库链接是正常的,因此语法如...... 查看详情

oracle中如何执行包含动态SQL的存储过程?

】oracle中如何执行包含动态SQL的存储过程?【英文标题】:HowtoexecutestoredprocedurescontainingdynamicSQLinoracle?【发布时间】:2013-06-0706:48:40【问题描述】:我已经创建了以下过程Createorreplaceprocedureabcd(tab_nameinUSER_TABLES.table_name%type)isbegine... 查看详情

如何使用 EF Core 5 执行存储过程 ORACLE?

】如何使用EFCore5执行存储过程ORACLE?【英文标题】:HowtoExecuteStoredProcedureORACLEwithEFCore5?【发布时间】:2021-03-0814:01:18【问题描述】:要尝试执行此方法,请启动此错误:Microsoft.EntityFrameworkCore.Database.Command[20102]FailedexecutingDbCommand... 查看详情

如何从 Windows 脚本文件执行 oracle 存储过程?

】如何从Windows脚本文件执行oracle存储过程?【英文标题】:Howtoexecuteoraclestoredprocedurefromwindowsscriptfile?【发布时间】:2012-05-1509:18:36【问题描述】:需要一点帮助:varoShell_1=WScript.CreateObject("WScript.Shell");oShell_1.run("cmd/cCDC:\\\\&&am... 查看详情

如何使用c#执行返回多个游标的oracle存储过程

】如何使用c#执行返回多个游标的oracle存储过程【英文标题】:Howtoexecuteoraclestoredprocedurereturningmultiplecursorsusingc#【发布时间】:2014-03-1710:03:36【问题描述】:我正在使用带有C#的OracleClient。我有一个返回多个游标的存储过程。我... 查看详情

如何在 Oracle SQL 开发人员中查看/执行授予的存储过程

】如何在OracleSQL开发人员中查看/执行授予的存储过程【英文标题】:Howtoview/executegrantedstoredprocedureinOracleSQLdeveloper【发布时间】:2019-01-0411:13:59【问题描述】:我用来访问特定数据库的用户已被授予另一个用户管理的存储过程的... 查看详情

如何在 Oracle SQL Developer 中多次执行相同的存储过程?

】如何在OracleSQLDeveloper中多次执行相同的存储过程?【英文标题】:HowtoexecutesamestoredproceduremultipletimesinOracleSQLDeveloper?【发布时间】:2017-12-2003:00:15【问题描述】:我有一个存储过程,我需要使用不同的输入集多次调用它。看起... 查看详情

oracle如何执行存储过程以及如何返回一个table

之前从来没有用oracle,想问下如何执行oracle的存储过程,之前按照sqlserver的执行方式发现不对。exec存储过程名参数名这样不对吗?没有用sqlpuls,使用的青蛙Toad,里面那样执行不对。。再问下oracle的sp不能返回一个table似的查询... 查看详情

oracle如何终止存储过程的运行!

...调用了5个子存储过程,第一个子存储过程执行报错后,如何终止所有存储过程的运行?因为现在情况是第一个错误报了ORA-00054错,但是除了错误的子存储过程其他都执行了。这样数据会很有问题。请问大大如何加判断直接终止... 查看详情

oracle执行存储过程时报:ora-12170:tns:连接超时

连接服务器数据库,连接时与执行各种语句都没问题,但只要调用存储过程执行就会报错:ORA-12170:TNS:连接超时,是否服务器端的什么端口被禁用掉了?要如何排除?参考技术A存储过程中是否用到dblink? 查看详情

如何使用 SQLPlus 查看 Oracle 存储过程?

】如何使用SQLPlus查看Oracle存储过程?【英文标题】:HowtoViewOracleStoredProcedureusingSQLPlus?【发布时间】:2011-10-2310:25:50【问题描述】:如何使用sqlplusforOracle10g查看存储过程的代码?当我输入时:descdaily_update;它向我显示了参数,但... 查看详情

oracle如何列出特定存储过程中使用的所有表

】oracle如何列出特定存储过程中使用的所有表【英文标题】:Howtolistallthetablesusedinaparticularstoredprocedureinoracle【发布时间】:2014-01-2014:24:17【问题描述】:我需要获取在oracle中特定存储过程中使用的所有表的列表。如何使用查询... 查看详情

如何在 Oracle 存储过程中正确使用对象类型?

】如何在Oracle存储过程中正确使用对象类型?【英文标题】:HowtocorrectlyuseanobjecttypeinanOraclestoredprocedure?【发布时间】:2012-08-0609:34:27【问题描述】:我有这个类型定义:CreateType"T1"asTableofVarchar2(10);/这被执行了。如何在PL/SQL中使... 查看详情

在 Oracle 中执行存储过程

】在Oracle中执行存储过程【英文标题】:ExecutingaStoredProcedureinOracle【发布时间】:2011-05-2715:27:57【问题描述】:我有一个存储过程,在ToadforOracle上我正在调用该过程使用SELECTFROMPKGName.ProcedureName(1,\'10/10/2010\',\'10/23/2010\',7,7)FROMDUAL... 查看详情

Oracle 12c 如何审计指定用户的指定存储过程

】Oracle12c如何审计指定用户的指定存储过程【英文标题】:Oracle12cHowtoauditspecifiedStoredprocedureforspecifiedUser【发布时间】:2022-01-1721:36:45【问题描述】:我想审核特定用户的特定程序。例如,我有一个存储过程prc_user_error并且我有... 查看详情

如何在 Oracle toad 中编辑和保存存储过程?

】如何在Oracletoad中编辑和保存存储过程?【英文标题】:HowtoeditandsavestoredprocedureinOracletoad?【发布时间】:2013-08-1922:35:28【问题描述】:您能否告诉我如何使用Toad在Oralce中编辑和保存存储过程。谢谢,回复【问题讨论】:【参... 查看详情

从 Sql Server 2008 执行 oracle 存储过程

】从SqlServer2008执行oracle存储过程【英文标题】:executinganoraclestoredprocedurefromSqlServer2008【发布时间】:2015-08-2804:42:01【问题描述】:我正在尝试通过DBLINK从SQLServer2008R8执行oracle存储过程,存储过程的头部是这样的:程序测试(XOUT... 查看详情

怎么知道oracle存储过程是不是执行完

参考技术A使用第三方软件执行存储过程后软件会有所提示:---比如SQLNavigator在执行存储过程后,运行按钮恢复可点状态,这就代表存储过程通过并成功执行;您可以调用查询您执行的存储过程中的语句看看值都正常否。---比如PL/S... 查看详情