2015-10-27 6 views
0

Привет, я пытаюсь подключиться к базе данных Oracle 11g, используя баннер ojdbc14 на eclipse kepler с java 8 на windows 7 os. Но когда я запускаю код, я получаю следующую ошибку. Вот мои и ошибки соответственно.java.sql.SQLException: IO Исключение: сетевой адаптер не смог установить соединение?

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 
import java.util.Scanner; 

    public class JDBCExample { 
     public static void main(String[] args) { 
     Scanner sc = new Scanner(System.in); 
     System.out.println("enter your databse details"); 
     System.out.println("user name"); 
     String uName = sc.next(); 
     System.out.println("password"); 
     String pWord = sc.next(); 
     try { 
      Class.forName("oracle.jdbc.driver.OracleDriver"); 
     } catch (ClassNotFoundException e) { 
     e.printStackTrace(); 
     } 
     Connection conn = null; 
     try { 
     conn = DriverManager.getConnection(
       "jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger"); 
     // jdbc:oracle:thin:@server:1521:xe 
     } catch (SQLException e) { 
     e.printStackTrace(); 
     } 
     if (conn != null) { 
     System.out.println("Successfully connected to DB"); 
     } else { 
     System.out.println("Failed to connect to DB"); 
     } 
    } 
} 

И ошибки заключаются в следующем. java.sql.SQLException: Io exception: The Network Adapter could not establish the connection at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at JDBCExample.main(JDBCExample.java:23)

+0

установлен ли оракул и работает на вашей машине? –

+0

Кроме того, настроен и работает слушатель Oracle TNS? ваш JDBC-URL указывает на localhost, поэтому мы предполагаем, что все это выполняется на вашей локальной машине. – slipperyseal

+0

Да, все это работает на моей машине. Я не могу понять, почему эти ошибки @SlipperySeal. –

ответ

1

Из нашего разговора вы можете подключиться к базе данных из командной строки telnet &. Пройдя через jdbcurl, я нашел ошибку.

локальный: 1521/х должен быть локальный: 1521: х если х является SID для вашей базы данных.

Изменить этот код из

conn = DriverManager.getConnection(
       "jdbc:oracle:thin:@localhost:1521/xe", "scott", "tiger"); 

Для

conn = DriverManager.getConnection(
       "jdbc:oracle:thin:@localhost:1521:xe", "scott", "tiger"); 

Взгляните на этот article

+0

Его показ java.sql.SQLException: недопустимые аргументы в ошибке вызова –

+0

Можете ли вы опубликовать фрагмент кода и номер строки? Это одна и та же линия? –

+0

https://docs.oracle.com/cd/E11882_01/appdev.112/e13995/oracle/jdbc/OracleDriver.html для примера ссылки. xe является SID вашей базы данных? –

Смежные вопросы