修改Oracle存储过程所需代码

我们都知道当我们在修改一个Oracle存储过程时,我们的写一个输出的相关的字符串,即“Hello World!”,在Oracle存储过程中,要用Notepad打开skeleton.sql 文件,. 用DBMS_OUTPUT.PUT_LINE 过程调用去替换NULL语句,如下所示:

Java代码

  1. CREATE OR REPLACE PROCEDURE skeleton   
  2. IS   
  3. BEGIN   
  4. DBMS_OUTPUT.PUT_LINE('Hello World!');   
  5. END;   
  6. CREATE OR REPLACE PROCEDURE skeleton  
  7. IS  
  8. BEGIN  
  9. DBMS_OUTPUT.PUT_LINE('Hello World!');  
  10. END;  

 

保存到文件skeleton.sql.

从SQL*Plus命令行, 打开文件skeleton.sql .

Java代码

  1. SQL> @skeleton   
  2. SQL>   
  3. CREATE OR REPLACE PROCEDURE skeleton   
  4. IS   
  5. BEGIN   
  6. DBMS_OUTPUT.PUT_LINE('Hello World!');   
  7. * END;   
  8. SQL> @skeleton  
  9. SQL> 
  10. CREATE OR REPLACE PROCEDURE skeleton  
  11. IS  
  12. BEGIN  
  13. DBMS_OUTPUT.PUT_LINE('Hello World!');  
  14. * END;  
  15. SQL> /   

 

SQL*Plus 通知你Oracle存储过程成功创建并输出提示信息:Procedure created.

SQL>

用EXECUTE 命令运行你的存储过程:

SQL> EXECUTE skeleton;

SQL*Plus显示存储过程运行成功:

  1. PL/SQL procedure successfully completed.  

我们想要的输出字符串 “Hello World!”没有出来,在显示一个DBMS_OUTPUT.PUT_LINE 结果前需要运行一个SET命令,在SQL*Plus 命令行提示符,键入:

 

  1. SQL> SET SERVEROUTPUT ON  

再次执行你的Oracle存储过程:

 

  1. SQL> EXECUTE skeleton;  

现在结果输出了:Hello World!

 

  1. PL/SQL procedure successfully completed.  

调试一个存储过程

当调试一个存储过程时,遵循一样的步骤,修改SQL文件,创建存储过程,执行存储过程,根据编译器反馈的出错信息进行修改,这一步是非常繁琐的,需要依靠经验。

在实际的商用存储过程的开发调试过程中,由于涉及很多表、类型、光标、循环、条件等复杂的逻辑,和PL/SQL语句的灵活运用,编译时会产生很多错误提示信息,程序员在根据这些错误信息定位,进行修正,再编译***得到正确的结构;
 

修改一个Oracle存储过程

让我们写一个输出字符串“Hello World!”的存储过程,用Notepad打开你的skeleton.sql 文件,. 用DBMS_OUTPUT.PUT_LINE 过程调用去替换NULL语句,如下所示:

Java代码

  1. CREATE OR REPLACE PROCEDURE skeleton   
  2. IS   
  3. BEGIN   
  4. DBMS_OUTPUT.PUT_LINE('Hello World!');   
  5. END;   
  6. CREATE OR REPLACE PROCEDURE skeleton  
  7. IS  
  8. BEGIN  
  9. DBMS_OUTPUT.PUT_LINE('Hello World!');  
  10. END;  

 

保存到文件skeleton.sql.

从SQL*Plus命令行, 打开文件skeleton.sql .

Java代码

  1. SQL> @skeleton   
  2. SQL>   
  3. CREATE OR REPLACE PROCEDURE skeleton   
  4. IS   
  5. BEGIN   
  6. DBMS_OUTPUT.PUT_LINE('Hello World!');   
  7. * END;   
  8. SQL> @skeleton  
  9. SQL> 
  10. CREATE OR REPLACE PROCEDURE skeleton  
  11. IS  
  12. BEGIN  
  13. DBMS_OUTPUT.PUT_LINE('Hello World!');  
  14. * END;  
  15. SQL> /   

 

SQL*Plus 通知你存储过程成功创建并输出提示信息:Procedure created.

SQL>

用EXECUTE 命令运行你的存储过程:

 

  1. SQL> EXECUTE skeleton;  

SQL*Plus显示Oracle存储过程运行成功:

  1. PL/SQL procedure successfully completed.  

我们想要的输出字符串 “Hello World!”没有出来,在显示一个DBMS_OUTPUT.PUT_LINE 结果前需要运行一个SET命令,在SQL*Plus 命令行提示符,键入:

 

  1. SQL> SET SERVEROUTPUT ON  

再次执行你的存储过程:

 

  1. SQL> EXECUTE skeleton;  

现在结果输出了:

  1. Hello World!   
  2. PL/SQL procedure successfully completed.   

 

上述的相关内容就是对Oracle存储过程的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. Oracle数据库中什么情况下会出现冷备份
  2. 三种Oracle备份方其特点介绍
  3. Oracle数据库的实用型的表现
  4. 手动设置Oracle管理控制和日志文件
  5. 如何用Oracle 9i全索引扫描完成任务

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/282690.html<

(0)
管理的头像管理
上一篇2025-05-13 14:14
下一篇 2025-05-13 14:15

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注