易截截图软件、单文件、免安装、纯绿色、仅160KB

Java 调用 Oracle 存储过程返回结果集

Oracle 存储过程返回结果集用 ref cursor 实现。
试验步骤如下:
1. 建立 ref cursor 类型和过程
CREATE OR REPLACE PACKAGE types
AS
    TYPE ref_cursor IS REF CURSOR;
END;
/
CREATE TABLE STOCK_PRICES(
    RIC VARCHAR(6) PRIMARY KEY,
    PRICE NUMBER(7,2),
    UPDATED DATE );
/
CREATE OR REPLACE FUNCTION sp_get_stocks(v_price IN NUMBER)
    RETURN types.ref_cursor
AS
    stock_cursor types.ref_cursor;
BEGIN
    OPEN stock_cursor FOR
    SELECT ric,price,updated from stock_prices WHERE price < v_price;
    RETURN stock_cursor;
END;
2. 用 sqlplus 测试过程
SQL> var results refcursor
SQL> exec :results := sp_get_stocks(20.0)
SQL> print results
3. 从 Java 调用
import java.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;
public class JDBCDemo {
    /**
    * Compile-time flag for deciding which query to use
    */
    private boolean useOracleQuery = true;
    /**
    * Class name of Oracle JDBC driver
    */
    private String driver = "oracle.jdbc.driver.OracleDriver";
    /**
    * Initial url fragment
    */
    private String url = "jdbc:oracle:thin:@";
    /**
    * Standard Oracle listener port
    */
    private String port = "1521";
    /**
    * Oracle style of calling a stored procedure
    */
    private String oracleQuery = "begin ? := sp_get_stocks(?); end;";
    /**
    * JDBC style of calling a stored procedure
    */
    private String genericQuery = "{ call ? := sp_get_stocks(?) }";
    /


相关文档:

我的java学习日记

  在大部分自学的情况下,学习java已快有一年了,最近看了一下jdk中demo下的Clock小程序,在温习了一下Applet的同时,也学到了不少新东西。首先,Applet的基本骨架是由:init(),start(),stop(),destroy(),paint(Graphics g),repaint()和update()这几个方法构成的。
  init()用来初始化实例,start()用来起动程序 ......

项目中你不得不知的11个Java第三方类库

项目中你不得不知的11个Java第三方类库
责任编辑:覃里作者:Javaeye   2009-11-02   来源:IT168网站
文本Tag: IT业界 Java Java开发工具
  【IT168 评论】Java第三方library ecosystem是一个很广阔的范畴。不久前有人撰文:每个项目中,你必须知道的11个Java第三方类库。
  单元测试
   ......

oracle Data Mining

 Executive Overview
The Oracle Data Mining Option provides powerful data mining functionality within the Oracle Database. It enables you to discover new insights hidden in your data and to leverage your investment in Oracle Database technology. With Oracle Data Mining, you can build and apply ......

oracle 笔记 V 之触发器 (TRIGGER)

 触发器 trigger
分类:前触发,后触发
      行触发器,语句触发器
行触发器与语句触发器的区别:
行触发器要求当一个 DML 语句操作影响数据库中的多行数据时,对于其中的每个数据行,只要它们符合触发约束条件,均激活一次触发器,FOR EACH ROW 选项说明触发器为行触发器;
语句触发器 ......

oracle临时表相关知识

 在Oracle8i或以上版本中,可以创建以下两种临时表:
1。会话特有的临时表
    CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification>)
    ON COMMIT PRESERVE ROWS;
  
2。事务特有的临时表
    CREATE GL ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号