create or replace procedure p_test2(i in number) as
begin
insert into t values (i,'x'||to_char(i));
commit;
end;
+++++++++++++++++++++++++++++++++++++++++++++++++++++
String driver = "oracle.jdbc.driver.OracleDriver";
String strUrl = "jdbc:oracle:thin:@192.168.1.6:1521:db";Class.forName(driver);
Connection conn = DriverManager.getConnection(strUrl, "scott", "tiger");String procedure = "{call p_test2 (?) }";
CallableStatement cstmt = conn.prepareCall(procedure);
cstmt.setInt(1,33);
cstmt.executeUpdate();Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from t");while(rs.next())
{
rs.getString(1)
}rs.close();
stmt.close();
conn.close();

解决方案 »

  1.   

    package opendb;  //¶¨Òå°üopendb
    import java.sql.*;   //ÒýÈëjava.sql.*//°üÖеÄÀàopendb
    public class opendb {    
    String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";  //Êý¾Ý¿âÁ¬½Ó×Ö·û´®:jdbc-odbcÇÅ
    String sConnStr="jdbc:odbc:myuser";
    Connection conn=null;
    ResultSet rs=null; //¶¨Òå´ò¿ªÊý¾Ý¿âÁ¬½ÓµÄº¯Êý
    public opendb() {
    try
    {
    Class.forName(sDBDriver);
    }
    catch (Java.lang.ClassNotFoundException e)
    {
    System.err.println("opendb():"+e.getMessage());
    }
    } //¶¨ÒåÖ´ÐÐsqlÓï¾äµÄº¯Êý
    public ResultSet executeQuery(String sql) {
    rs=null;
    try
    {
    conn=DriverManager.getConnection(sConnStr);
    Statement stmt=conn.createStatement();
    rs=stmt.executeQuery(sql);
    }
    catch (SQLException ex)
    {
    System.err.println("aq.executeQuery:"+ex.getMessage());
    }
    return rs;//·µ»ØsqlÓï¾äµÄÖ´Ðнá¹û
    }
    }
      

  2.   

    package opendb;  
    import java.sql.*;   
    public class opendb {    
    String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver"; 
    String sConnStr="jdbc:odbc:myuser";
    Connection conn=null;
    ResultSet rs=null;
    public opendb() {
    try
    {
    Class.forName(sDBDriver);
    }
    catch (Java.lang.ClassNotFoundException e)
    {
    System.err.println("opendb():"+e.getMessage());
    }
    }
    public ResultSet executeQuery(String sql) {
    rs=null;
    try
    {
    conn=DriverManager.getConnection(sConnStr);
    Statement stmt=conn.createStatement();
    rs=stmt.executeQuery(sql);
    }
    catch (SQLException ex)
    {
    System.err.println("aq.executeQuery:"+ex.getMessage());
    }
    return rs;
    }
    }