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 at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) 在Jdbcdemo.main(Jdbcdemo.java:12)
以上异常即将到来我不知道如何解决这个问题。请帮忙
答案 0 :(得分:1)
根据堆栈跟踪,
java.sql.SQLException:找不到合适的驱动程序
看起来您没有合适的Oracle数据库驱动程序。 要解决此问题,您必须在类路径中使用Oracle JDBC驱动程序。
您可以从oracle site下载合适的驱动程序,然后将该软件包添加到您的构建路径中。
请参阅this article设置类路径或其他SO问题。
答案 1 :(得分:1)
您获得的错误消息并不一定意味着您没有合适的驱动程序,或者您的类路径中没有驱动程序。我认为你的类路径中必须有一个驱动程序,因为Class.forName
调用成功了。根据{{3}}你应该加载“oracle.jdbc.OracleDriver”,但是你找到了一些东西,这是一个好兆头。
您的JDBC网址应以jdbc:oracle:thin:
开头(不是jdbc.oracle:thin:
)。即使其他一切都是正确的,前缀错误也会导致“找不到合适的驱动程序”错误(我在我的类路径中使用Oracle jar验证了这一点,并且知道我知道的JDBC URL):
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)
...
一旦你获得了正确的前缀,那么如果网址的其余部分出现问题,你将收到不同的错误:
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)
...
通常网址类似
jdbc:oracle:thin:@//dbserver:port/databasename
请与您的DBA联系,找出正确的网址。