Re: help!! how to call pl/sql anonymous block from java?
Date: Sat, 29 Mar 2008 06:06:14 -0700 (PDT)
Message-ID: <8dc6a2a1-60fe-4eaa-892b-92ae464749f4@d4g2000prg.googlegroups.com>
On Mar 29, 8:47 am, code <kevinj..._at_gmail.com> wrote:
> I know that jdbc can call a pl/sql package or procedure,but if i
> want to call a pl/sql anonymous block, how can i do it? no procedure
> name or package name will be offered.
> Can u give me a sample code? thanks very much
Just use a CallableStatement or OracleCallableStatement:
import java.sql.*;
import oracle.jdbc.*;
...
try
{
Connection conn =
DriverManager.getConnection("jdbc:oracle:thin:@dbhost:
1521:ORCL","SCOTT","TIGER");
OracleCallableStatement oracs =
((OracleConnection)conn).prepareCall("BEGIN do_something; END;");
try
{
if (oracs.execute())
{
ResultSet rs = oracs.getResultSet(); // process the result set here
}
}
catch(SQLException ex)
{
System.out.println("Exception in execute phase: "); ex.printStackTrace();
}
finally
{
// we want to close the statement regardless if it failed or not oracs.close();
}
}
catch(SQLException sqlex)
{
System.out.println("General SQL exception encountered:"); sqlex.printStackTrace();
}
Hth,
Vladimir M. Zakharychev
N-Networks, makers of Dynamic PSP(tm)
http://www.dynamicpsp.com
Received on Sat Mar 29 2008 - 08:06:14 CDT