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(?) }";
/**
相关文档:
背景:在windows 2003 server上安装了Oracle 9.2.0.1.0,现打算将其升级到9.2.0.8版本。
1.升级oracle(administrator用户权限)
(1)到metalink下载升级压缩包,patch号为4547809,压缩包名称为 p4547809_92080_WINNT.zip,for windows 32bit。
(2)解压缩zip,下边包含一个Disk1和readme.html文件。 ......
每个Oracle用户都有一个名字和口令,并拥有一些由其创建的表、视图和其他资源。Oracle角色(role)就是一组权限(privilege)(或者是每个用户根据其状态和条件所需的访问类型)。用户可以给角色授予或赋予指定的权限,然后将角色赋给相应的用户。一个用户也可以直接给其他用户授权。
数据库系统权限(Dat ......
查看锁表进程SQL语句1:
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_ ......
author:skate
time:2010-05-25
数据文件管理
1. datafile add
2. datafile delete
3. datafile resize
4. datafile rename
1. datafile add
添加表空间,从而添加datafile
SQL> create tablespace tbs_skate
2 datafile '+datagroup' size 20m;
Tablespace created
SQL> sel ......
Cmd命令行输入lsnrctl进入监听模式,通过set password设置密码。
通过 change_password 修改密码。
LSNRCTL> help
以下操作可用
星号 (*) 表示修改符或扩展命令:
start stop &nbs ......