用java从oracle取数

王朝oracle·作者佚名  2008-05-31
宽屏版  字体: |||超大  

/*

drop table varray_table;

drop type num_varray;

CREATE TYPE num_varray AS VARRAY(10) OF VARCHAR2(12)

/

CREATE TABLE varray_table (col1 num_varray);

INSERT INTO varray_table VALUES (num_varray('你好', 'abc'));

select * from varray_table;

*/

import Java.sql.*;

import java.math.*;

import Oracle.jdbc.driver.*;

import oracle.sql.*;

class Array1

{

public static void main(String args[]) throws Exception

{

int oracleId = CharacterSet.ZHS16GBK_CHARSET;

CharacterSet dbCharset = CharacterSet.make(oracleId);

DriverManager.registerDriver

(new oracle.jdbc.driver.OracleDriver());

Connection conn =

DriverManager.getConnection

("jdbc:oracle:thin:@10.9.200.58:1521:db01",

"mytest",

"mytest");

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM varray_table");

while (rs.next()) {

ARRAY my_array = ((OracleResultSet)rs).getARRAY(1);

// return the SQL type names, integer codes,

// and lengths of the columns

System.out.println ("Array is of type " + my_array.getSQLTypeName());

System.out.println ("Array element is of typecode " + my_array.getBaseType());

System.out.println ("Array is of length " + my_array.length());

// get Array elements

String[] values = (String[]) my_array.getArray();

for (int i = 0; i < values.length; i++)

{

oracle.sql.CHAR out_value = new oracle.sql.CHAR(values[i], dbCharset);

System.out.println(">> index " + i + " = " + out_value);

}

}

rs.close();

stmt.close();

conn.close();

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有