0

I am trying to connect to oracle DB using below code. But getting error 'Got minus one from a read call'

public class DBConnection {

public static void main(String[] args) throws ClassNotFoundException, SQLException {

     String val = dataBaseConnection("col1","SELECT col1,col2 FROM table");
     System.out.println(val);
}
public static String dataBaseConnection(String columnName, String sqlQuery) throws SQLException, ClassNotFoundException {       
    Connection conn = null;
    Statement stmt = null;
    ResultSet resultSet = null;
    String Value = null;
    Class.forName("oracle.jdbc.driver.OracleDriver");       
    conn = DriverManager.getConnection("jdbc:oracle:thin:@host:1531:servicename","username","password");
    System.out.println("$$$$DataBase Connection successfull$$$$");
    stmt = conn.createStatement();      
    resultSet = stmt.executeQuery(sqlQuery);
    while(resultSet.next()) {
        Value = resultSet.getString(columnName);
    }
    if(resultSet != null) {
        try {
            resultSet.close();
        } catch(Exception e) {
     }          
    }
    if(stmt != null) {
        try {
            stmt.close();
        } catch(Exception e) {
     }          
    }
    if(conn != null) {
        try {
            conn.close();
        } catch(Exception e) {
     }          
    }
    return Value;

}

}

Below is the exception i am getting.

Exception in thread "main" java.sql.SQLRecoverableException: IO Error: Got minus one from a read call
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:801)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:782)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:39)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:704)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)

Please help me to sort out this issue.

  • 1
    Does this answer your question? [How to approach a "Got minus one from a read call" error when connecting to an Amazon RDS Oracle instance](https://stackoverflow.com/questions/19660336/how-to-approach-a-got-minus-one-from-a-read-call-error-when-connecting-to-an-a) – followingell Apr 16 '20 at 13:25
  • Please learn about try-with-resources, your current code is rather more verbose than necessary and can leak resources because you're not properly closing things. – Mark Rotteveel Apr 16 '20 at 15:46
  • My issue is resolved by changing url format to String url = "jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCPS) (HOST =example.com) (PORT = 8080))) (CONNECT_DATA = (SERVER = DEDICATED)(SID = somesid)))"; – sagar konam Apr 17 '20 at 13:20

0 Answers0