Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

jdbcµ÷ÓÃoracle function·µ»Ø½á¹û¼¯

ÉêÃ÷oracleº¯Êý£¬¼°Æä½á¹û¼¯½á¹¹
½á¹û¼¯±ØÐëΪȫ¾ÖµÄ¡¢table of ²»ÄÜÓÃindex by
CREATE OR REPLACE TYPE EMPARRAY is object (corporationId number)£»
CREATE OR REPLACE TYPE EMPARRAY2 is table of EMPARRAY£»
 create or replace function func_empl return sys_refcursor is
Result sys_refcursor;
list emparray2 := emparray2();
item emparray ;
begin
select 1 into item.corporationId from dual;
list.extend;
list(list.count) := item;
item.corporationId := 2;
list.extend;
list(list.count) := item;
item.corporationId := 3;
list.extend;
list(list.count) := item;
OPEN Result FOR
SELECT * from TABLE(cast(list as emparray2));
return(Result);
end func_empl;
»ñÈ¡·µ»ØÓαꡣ
  public void callFuncQuery(String sql, RowCallbackHandler rch,
String returnType) throws DataAccessObjectException {
Connection con = null;
CallableStatement cstmt = null;
ResultSet rs = null;
logger.info(sql);
try {
con = getDataSource().getConnection();
cstmt = con.prepareCall(sql);
//ÊÊÓÃÓÚÊý×é
//cstmt.registerOutParameter(1, OracleTypes.ARRAY, returnType);
//cstmt.registerOutParameter(1, OracleTypes.STRUCT, returnType);
//ÊÊÓÃÓÚÓαê
cstmt.registerOutParameter(1, OracleTypes.CURSOR);
cstmt.executeUpdate();
/*Array out=cstmt.;
System.out.println("Array is of type "
+ out.getBaseTypeName());
System.out.println("Array element is of type code "
+ out.getBaseType());*/
rs = (ResultSet)cstmt.getObject(1);
while (rs.next()) {
rch.processRow(rs);
}
} catch (SQLException e) {
throw new DataAccessObjectException(e);
} finally {
try {
if (rs != null) {
rs.close();
rs = null;
}
if (cstmt != null) {
cstmt.close();
cstmt = null;
}
if (con != null) {
con.close();
con = null;
}
} catch (SQLException e) {
throw new DataAccessObjectException(e);
}
}


Ïà¹ØÎĵµ£º

Á½Ì¨oracleÊý¾Ý¿âÏ໥µ¼Êý¾Ý

°¸Àý˵Ã÷£º
    ÓÐA,BÁ½Ì¨oracleÊý¾Ý¿â£¬¶¼Îª10g,ÏÖÔÚÓÐÒ»¸öAÊý¾Ý¿âÖÐone±íµÄ¼¸ÌõÊý¾ÝÒª²åÈëµ½BÊý¾Ý¿âÖеÄone±í£¿
ÔÚÍøÉϲéÔÄÁËһϣ¬¿ÉÒÔͨ¹ýÔÚAÉϽ¨Á¢dblink£¬µ±È»ÔÚB»úÉϽ¨Á¢Ò²ÊÇÒ»ÑùµÄ¡£
´ò¿ªsqlplusÖÕ¶Ë£¬»òÕßÈÎÒâµÄoracle¿Í»§¶Ë»·¾³£¬Ö´ÐÐÒÔÏÂSQL
create database link Á´½ÓÃû 
¡¡connect t ......

OracleÖзÖ×é²éѯʱkeepµÄʹÓÃ[ת][×î¼ò][Ò×¶®]

for   example:  
   
  15:18:59   SQL>   create   table   t1   (a   int,   b   int);  
   
  ±íÒÑ´´½¨¡£  
   
  ÒÑÓÃʱ¼ä:     00:   00:   00.15  
  ......

Oracle OSÈÏÖ¤ÒÔ¼°¿ÚÁîÎļþ

1.OSÈÏÖ¤
Oracle°²×°Ö®ºóĬÈÏÇé¿öÏÂÊÇÆôÓÃÁËOSÈÏÖ¤µÄ£¬ÕâÀïÌáµ½µÄosÈÏÖ¤ÊÇÖ¸·þÎñÆ÷¶ËosÈÏÖ¤¡£OSÈÏÖ¤µÄÒâ˼°ÑµÇ¼Êý¾Ý¿âµÄÓû§ºÍ¿ÚÁîУÑé·ÅÔÚÁ˲Ù×÷ϵͳһ¼¶¡£Èç¹ûÒÔ°²×°OracleʱµÄÓû§µÇ¼OS£¬ÄÇô´ËʱÔڵǼOracleÊý¾Ý¿âʱ²»ÐèÒªÈκÎÑéÖ¤£¬È磺
SQL> connect /as sysdba
ÒÑÁ¬½Ó¡£
SQL> connect sys/aaa@test as ......

ORACLEÒì³£´¦Àí×ܽá

£±£ºÔ¤¶¨ÒåÒì³£       ÓÃÓÚ´¦Àí³£¼ûµÄOracle´íÎó
£²£º·ÇÔ¤¶¨ÒåÒì³£    ÓÃÓÚ´¦ÀíÔ¤¶¨ÒåÒì³£Ëù²»ÄÜ´¦ÀíµÄOracle´íÎó
£³£º×Ô¶¨ÒåÒì³£       ÓÃÓÚ´¦ÀíÓÚOracle´íÎóÎÞ¹ØµÄÆäËûÇé¿ö
Òì³£´¦Àí²¿·ÖÊÇÒԹؼü×ÖEXCEPTION¿ªÊ¼µÄ£¬Óï·¨È ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ