精华内容
下载资源
问答
  • 1、执行带有输出类型参数的存储过程 set serveroutput on;DECLARE dwbh varchar2(20); out_param varchar2(1000); BEGIN dwbh:='3609000001'; pkg_znpj.znpj_zf(dwbh,out_param); dbms_output.put_line(ou...

    1、执行带有输出类型参数的存储过程

    set serveroutput on;
    DECLARE
        dwbh varchar2(20);
        out_param  varchar2(1000);
    BEGIN
        dwbh:='3609000001';
        pkg_znpj.znpj_zf(dwbh,out_param);
        dbms_output.put_line(out_param);
    END;
    /

    2、直接输出一句话

    set serveroutput on;
    begin  
    dbms_output.put_line( 'hello! ');
    end;
    /


    3、执行带外部参数的sql语句,并输出结果

    set serveroutput on;
    DECLARE
     mc number; 
    BEGIN
    select distinct TO_CHAR(SYSDATE,'DDD') into mc FROM fhjczg_fhxc;
     dbms_output.put_line(mc);
    END;
    /


    select  TO_CHAR(SYSDATE,'DDD')  FROM dual

    set serveroutput on;
    DECLARE
        xfjgbh varchar2(20);
    BEGIN
        xfjgbh:='100003';
        pkg_zdpj.znpj_zdpj(xfjgbh);
    END;
    /

    转载于:https://www.cnblogs.com/yugen/archive/2010/07/25/1784859.html

    展开全文
  • 不会有人傻到要用 vim 去开发,再用 sql plus 去调试我们通常情况下,开发和调试Oracle存储过程都是用可视化工具,如PL SQL DEVELOPER,TOAD等等。不会有人傻到要用 vim 去开发,再用 sql plus 去调试的存储过程的...

    开发和调试Oracle存储过程都是用可视化工具,如PL SQL DEVELOPER,TOAD等等。不会有人傻到要用 vim 去开发,再用 sql plus 去调试

    我们在通常情况下,开发和调试Oracle存储过程都是用可视化工具,如PL SQL DEVELOPER,TOAD等等。不会有人傻到要用 vim 去开发,再用 sql plus 去调试的存储过程的。但在有些情况下,我们知道在 sql plus 中如何调试存储过程,还是有收益的。

    像我的有些客户的数据库环境,我只能通过ssh 连接进去看。开发人员告诉我,,一个存储过程使用pl sql developer 调试一下就死掉,再调再死。

    我在数据库的系统管理视图中看不到任何错误,怎么办呢?

    没办法,只能自己使用sql plus 这个工具去调试存储过程啦!

    在绕过几层网络设置,连接上数据库服务器操作系统,打开sqlplus 工具窗口。

    要调试的存储过程是这样子:

    CREATE OR REPLACE PROCEDURE "PROC_OBJECT_GET_ID"(p_id_name varchar2,

    result out integer,

    p_message out varchar2)

    一个输入变量和两个输出变量,分别为varchar,integer,varchar 类型。

    在sql plus 中,使用var 声明变量,使用exec 赋值和执行存储过程

    SQL> VAR P_ID_NAME VARCHAR2(100)

    SQL> VAR RESULT NUMBER

    SQL> VAR P_MESSAGE VARCHAR2(100)

    SQL> EXEC :P_ID_NAME:= 'com.css.cms.document'

    SQL> execute PROC_OBJECT_GET_ID1(:P_ID_NAME,:result,:p_message);

    PL/SQL 过程已成功完成。

    SQL> PRINT RESULT

    RESULT

    ----------

    -1

    SQL> PRINT P_MESSAGE

    P_MESSAGE

    --------------------------------------------------------------------------------

    ORA-01422: 实际返回的行数超出请求的行数

    变量的类型只有帮助中列出来的这些。

    SQL> variable result integer;

    用法 : VAR[IABLE] [ [ NUMBER | CHAR | CHAR (n [CHAR|BYTE]) |

    VARCHAR2 (n [CHAR|BYTE]) | NCHAR | NCHAR (n) |

    NVARCHAR2 (n) | CLOB | NCLOB | REFCURSOR |

    BINARY_FLOAT | BINARY_DOUBLE ] ]

    sqlplus 工具还有一些功能,可以使用help 方式去学习。

    更多Oracle相关信息见Oracle 专题页面 ?tid=12

    logo.gif 本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:php中文网

    展开全文
  • 1:用oracle用户登录到服务器2:输入sqlplusbcp/bcp123(这个时候有可能服务器上存在多个实例)查看实例(export ORACLE_BASE=/opt/oracleexport ORACLE_HOME=/opt/oracle/product/10gexport ORACLE_SID=sznylexport ...
    1:用oracle用户登录到服务器
    2: 输入 sqlplus bcp/bcp123(这个时候有可能在服务器上存在多个实例)查看实例(
    export ORACLE_BASE=/opt/oracle
    export ORACLE_HOME=/opt/oracle/product/10g
    export ORACLE_SID=sznyl
    export ORACLE_SID=testall
    export ORACLE_SID=bcpall
    )默认为最后一个bcpall
    如果想进入sznyl实例下面的bcp/bcp123需要执行下export ORACLE_SID=sznyl
    3: 输入 
    var code number; --out的值
    var msg varchar2(50);--out的值
    exec p_stat_recommend_day(:code,:msg);
    print code; --打印out的值
    print msg;--打印out的值

    转载于:https://www.cnblogs.com/working/p/3305672.html

    展开全文
  • oracle存储过程 语法格式CREATE OR REPLACE PROCEDURE procedureNameISDECLARE.......BEGIN...........END;开始使用su - oraclesqlplusSQL*Plus: Release 11.2.0.1.0 Production on 星期二 5月 15 13:58:04 2012...

    oracle存储过程 语法格式

    CREATE OR REPLACE PROCEDURE procedureName

    IS

    DECLARE

    .......

    BEGIN

    ...........

    END;

    开始使用

    su - oracle

    sqlplus

    SQL*Plus: Release 11.2.0.1.0 Production on 星期二 5月 15 13:58:04 2012

    Copyright (c) 1982, 2009, Oracle.  All rights reserved.

    请输入用户名:  user1

    输入口令:

    连接到:

    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    SQL> create or replace procedure testp

    2  is

    3  begin

    4  dbms_output.put_line('aaa');

    5  end;

    6  /

    过程已创建。

    SQL> call testp();

    调用完成。

    SQL> set serveroutput on

    SQL> call testp();

    aaa

    调用完成。

    SQL> begin

    testp();

    end;

    .

    SQL> /

    aaa

    PL/SQL 过程已成功完成。

    输入代码以“.”结束代码录入

    输入"/" 执行代码

    http://blog.csdn.net/super1900/article/details/4246854

    例子2 :输出小于指定年龄人的名字

    创建表

    create table k1(name varchar2(20),age number);

    插入数据

    insert into k1(name,age) values('aaa',20);

    insert into k1(name,age)values('bbb',30);

    创建存储过程   create or replace procedure uAge1(a2 number)    is    vName varchar2(20);    begin    select name into vName from k1 where age / 调用存储过程 SQL> call UAGE1(30); name=aaa 调用完成。   call UAGE1(40); table no data found 调用完成。

    展开全文
  • sqlplus中执行存储过程

    千次阅读 2010-04-21 14:29:00
    CREATE OR REPLACE PROCEDURE GETZRCLIST (p_TYBM in varchar2,p_CURSOR OUT comm_types.comm_cursor) is temp_str varchar2(10); temp_nf number; temp_number number; 
  • 存储过程调用入参+出参出参 别问我为什么不用test调用,太low(其实是某些场景根本不给你使用plsql) 入参+出参 存储过程示例 CREATE OR REPLACE PROCEDURE proc_lee_in_out_parameter(in_parameter IN VARCHAR2,out...
  • 基本的shell文件结构如下:sqlplus user/password <exec proc_name;exit!Demoprocedure name: sp_ems_hasten_count(v_oper_date in varchar2).shfile : execpro.sh[oracle@localhost tmp]$ cat -v execpro.s...
  • variable p refcursor; variable flag varchar2(100); variable msg varchar2(100); execute PollutionStatic.getPollutionStatic(:flag,:msg,:p); print p; 转载于:...
  • sql plus 调用存储过程

    2019-03-03 14:26:47
    使用游标将查询数据插到临时表。从临时表抽出数据到文件。
  • 我们通常情况下,开发...但有些情况下,我们知道 sql plus 如何调试存储过程,还是有收益的。像我的有些客户的数据库环境,我只能通过ssh 连接进去看。开发人员告诉我,一个存储过程使用pl sql developer 调...
  • 在sqlplus中这两种方法都可以使用:exec pro_name(参数1..); call pro_name(参数1.... 存储过程没有参数时,exec可以直接跟过程名(可以省略()),但call则必须带上().Sql代码SQL> --创建过程 插入数据SQL> creat...
  • Oracle数据库PL/SQL中执行存储过程

    千次阅读 2019-04-02 09:09:25
    有时生产线上问题,或者调试需要手动pl/sql中执行存储过程,但一般不建议这么做(影响线上交易)。 一、直接测试执行 pl/sql找到对应需要测试的存储过程,左边菜单栏:Procedures下。鼠标右击—>测试,...
  • 1、使用Oracle数据库过程中,常规的执行存储过程(procedure)的方式有两种:一是类似PL/SQL Developer的工具软件上点击界面按钮的方式执行,若有传入参数可以测试窗口的值域中填入相应的参数值,再继续调试和...
  • 本文实例讲述了Python使用cx_Oracle调用Oracle存储过程的方法。分享给大家供大家参考,具体如下: 这里主要测试Python通过cx_...然后,开始Python命令行进行存储过程调用。 import cx_Oracle as cx conn = cx
  • oracle中执行存储过程

    2021-05-08 14:35:44
    oracle中执行存储过程创建了一oracle的定时任务,定时的将一个表的记录插入到另一个表,查询的时候表竟然没数据,pl/sql查看建的任务发现failures的值为3,难道建的存储过程有错?运行一下存储过程试试吧...
  • java代码调用shell脚本如下: RmtShellExecutor exe = new RmtShellExecutor("18.81.17.121", "erm", "gdserm"); // 执行imp_etl.sh 参数为cc00009991 int status = exe.exec("sh /home/erm/CMIS_DATA/bin/imp_...
  • 下面为您介绍sqlplus执行存储过程和sql语句的写法,供您参考,如果您对SQL语句感兴趣的话,不妨一看,希望对您有所帮助。1、执行带有输出类型参数的存储过程set serveroutput on;DECLAREdwbh varchar2(20);out_param...
  • SQL codedeclareImport_Date date;beginImport_date:=to_date('2011-04-01','YYYY-MM-DD');sp_GetOCNResult_XH(Import_Date);commit;end;/declareImport_Date date;beginImport_date:=to_date('2011-05-01','YYYY-MM...
  • sqlplus ( < username > [/ < password > ][@ < connect_identifier > ] | /) [AS SYSDBA | AS SYSOPER] | /NOLOGSQL > desc user_source;Name Null ? Type-- --------------------------...
  • select text from all_source where name = '存储过程名';
  • 提示符下输入存储过程的内容,然后执行/ 即可编译存储过程 如果提示编译出错,则执行show error,可以看到错误的提示 然后执行edit进入命令行缓冲,根据提示修改存储过程,修改完毕,键入:x保存 然后再执行/ 重新...
  • Oracle在执行存储过程中,call与exec有何不同之处?有哪些不同的地方?IT培训网此详细阐述分析,让你浅显易懂的明白call与exec有何不同之处。Oracle中执行存储过程call和exec有何区别在sqlplus中这两种方法都可以...
  • oracle sqlplus执行代码块(2011-09-16 15:38:27)转载▼标签: 杂谈 分类: database SQL> create table tbl_pos_stock_detail (id number); 表已创建。 SQL> edit 已写入 file afiedt.buf 1 ...
  • PL/SQL中执行存储过程的方法

    千次阅读 2017-12-12 17:25:12
    1、在sqlplus命令行界面使用"EXECUTE"命令(简写做"EXEC")执行 sec@ora10g> exec proc_helloworld Hello World! PL/SQL procedure successfully completed. 此方法对应plsql工具的命令窗口。 如果...
  • oracle sqlplus存储过程

    千次阅读 2013-07-24 21:37:41
    1、写一个存储过程:可以Notepad进行   CREATE OR REPLACE PROCEDURE skeleton  IS  BEGIN  NULL;  END;  把文件存为skeleton.sql. ==========解释一下===========  让我们一...
  • 1、编写shell脚本,使用Unix下crontab后台定时执行第一步: shell脚本(如test.sh)#!/bin/sh#定义oracle环境变量ORACLE_BASE=/u01/oracleORACLE_HOME=/u01/oracle/app/oracle/product/9.2.0.1 //指oracle服务器上...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,268
精华内容 6,507
关键字:

在sqlplus中执行存储过程