2013-09-03 3 views
0
import java.sql.*; 
public class Jdbcdemo { 

    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     // TODO Auto-generated method stub 

     try { 
      Class.forName("oracle.jdbc.driver.OracleDriver"); 
      Connection c=DriverManager.getConnection("jdbc.oracle:thin:@hp-hp:1521:xe","system", "ashu41228"); 
      if(c!=null) 
      { 
       System.out.println("DataBase is Created"); 


      } 


     } catch (ClassNotFoundException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (SQLException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

    } 

} 

java.sql.SQLException: Нет подходящий драйвер найден для jdbc.oracle:thin:@hp-hp:1521:xe на java.sql.DriverManager.getConnection (Unknown Source) в java.sql.DriverManager.getConnection (Unknown Source) на Jdbcdemo.main (Jdbcdemo.java:12)Ошибка при подключении JDBC

выше исключение приходит я не знаю, как решить this.pls помощь

ответ

1

Согласно StackTrace ,

java.sql.SQLException: No suitable driver found

Похоже, у вас нет подходящего драйвера для базы данных Oracle. Чтобы решить эту проблему, вам понадобится драйвер Oracle JDBC в вашем пути к классам.

Вы можете скачать подходящий драйвер от oracle site и добавить пакет в свой путь сборки.

Обратитесь к this article, чтобы задать свой путь к классу или другие вопросы.

1

Сообщение об ошибке, которое вы получаете, не обязательно означает, что у вас нет нужного драйвера или у вас нет драйвера в вашем пути к классам. Я думаю, что у вас должен быть драйвер в вашем пути к классу, потому что вызов Class.forName преуспел. Согласно FAQ, вы должны загружать «oracle.jdbc.OracleDriver», но вы находите что-то, и это хороший знак.

Ваш JDBC-код должен начинаться с jdbc:oracle:thin: (не jdbc.oracle:thin:). Даже если все остальное является правильным, получение префикса неправильно будет вызывать «Нет подходящего драйвера найден», происходит ошибка (я проверил это с баночки Oracle в моем пути к классам и URL JDBC, что я знаю, работает):

groovy:000> url = "jdbc.oracle:thin:@//localhost:1521/FOOBAR" 
groovy:000> DriverManager.getConnection(url, "asdf", "zxcv") 
ERROR java.sql.SQLException: No suitable driver found for jdbc.oracle:thin:@//localhost:1521/FOOBAR 
     at java_sql_DriverManager$getConnection.call (Unknown Source) 
     at groovysh_evaluate.run (groovysh_evaluate:4) 
     ... 

После того, как вы получите приставку прямо тогда, если остальная часть URL имеет проблемы, вы получите другую ошибку:

groovy:000> url = "jdbc:oracle:thin:@//localhost:1521/FOOBAR" 
groovy:000> DriverManager.getConnection(url, "asdf", "asdf") 
ERROR java.sql.SQLRecoverableException: 
IO Error: The Network Adapter could not establish the connection 
     at oracle.jdbc.driver.T4CConnection.logon (T4CConnection.java:419) 
     at oracle.jdbc.driver.PhysicalConnection.<init> (PhysicalConnection.java 
:536) 
     at oracle.jdbc.driver.T4CConnection.<init> (T4CConnection.java:228) 
     at oracle.jdbc.driver.T4CDriverExtension.getConnection (T4CDriverExtensi 
on.java:32) 
     at oracle.jdbc.driver.OracleDriver.connect (OracleDriver.java:521) 
     at java_sql_DriverManager$getConnection.call (Unknown Source) 
     at groovysh_evaluate.run (groovysh_evaluate:4) 
     ... 

Обычно URL-то вроде

jdbc:oracle:thin:@//dbserver:port/databasename 

Проверьте с вами r DBA, чтобы узнать, какой должен быть правильный URL.

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