Java程序和mySQL连接问题:找不到合适的驱动程序

问题描述:

我一直在使用mySQL数据库连接时遇到问题。我发现了一个错误:Java程序和mySQL连接问题:找不到合适的驱动程序

No suitable driver found for jdbc:mysql://127.0.0.1/sakila.

我已经安装了MySQL工作台,从这里有司机 http://dev.mysql.com/downloads/connector/j/

我已保存的MySQL连接器的Java-5.1.18-bin和设置类路径到

C:\ Program Files \ Java \ jre7 \ lib \ mysql-connector-java-5.1.18-bin;

并启动了找到数据库的mysql工作台。

我正在使用的代码如下:我确定这是我的工作,因为我已经要求朋友测试它的形式。不幸的是,我们正在不同的平台上开发,并不能指导我如何解决这个错误。有没有人有关我如何解决这个问题的想法?

public class Version { 

public static void main(String[] args) { 

    Connection con = null; 
    Statement st = null; 
    ResultSet rs = null; 

    String url = "jdbc:mysql://127.0.0.1/sakila"; 
    //String url = "jdbc:mysql://localhost:3306/sakila"; 
    String user = "root"; 
    String password = "root"; 


    try { 


     con = DriverManager.getConnection(url, user, password); 
     st = con.createStatement(); 
     rs = st.executeQuery("select * from actor;"); 

     System.out.println("test"); 

     if (rs.next()) { 
      System.out.println(rs.getString(1)); 
     } 

    } catch (Exception ex) { 
     System.out.println(ex); 
} 
} 

}

EDIT:问题sovled。没有将.jar附加到bin文件的末尾,这是必要的。

+0

可以指定你如何设置类路径? [这篇文章](http://*.com/questions/2386372/how-to-set-the-system-environment-classpath-variable-in-windows-7)可能会提示如何设置它 - 请注意因为“程序文件”中有一个空格,因此引用了该条目 – sgmorrison 2012-03-19 21:08:00

+0

不应该有“mysql-connector-java-5.1.18-bin”的jar扩展名吗? – hovanessyan 2012-03-19 21:08:05

+0

多数民众赞成的事,.bin文件是在Windows文件描述符中的类型jar,但不是.jar。 – BodhiByte 2012-03-19 21:18:10

您需要的连接器jar文件放置到你的classpath...\jre1.6.0\lib\ext

Classpath is the one you should favor instead of the latter 
+0

我已经设置了类路径,正如我在原文中提到的那样! – BodhiByte 2012-03-19 21:12:29

PLZ行“CON =的DriverManager.getConnection(URL,用户之前加入下面的

String driver = "com.mysql.jdbc.Driver"; 
Class.forName(driver).newInstance(); 

,密码);”

您只需在从drivermanager获取连接之前加载驱动程序类。

+0

嗨,感谢您的建议。我现在得到一个类没有发现异常 – BodhiByte 2012-03-19 21:11:57

+0

在类路径中,你应该设置绝对路径,直到jar文件名,例如C:\ Program Files \ Java \ jre7 \ lib \ mysql-connector-java-5.1.18-bin \ 。罐。 – htulsiani 2012-03-19 21:18:08

+0

没有jar文件与驱动程序下载。如果你想看看,我发布了一个链接到驱动程序下载页面。 – BodhiByte 2012-03-19 21:19:49

您需要将MySQL连接器库jar file添加到类路径中,而不是包含它的目录。

您是否使用Netbeans或Eclipse之类的IDE?在Windows中设置了一个命令行开发环境并不难,但它不是小事要么

+0

你是什么意思的JAR文件?这是我设置为类路径的.bin文件的文件类型。我没有在这个项目中使用eclipse或netbeans。 – BodhiByte 2012-03-19 21:13:32

+0

mysql-connector-java-5.1.18-bin里面是什么? – Joni 2012-03-19 21:18:15

+0

它永远不会打开。我发布了一个链接到我下载的驱动程序,如果你想看看。 – BodhiByte 2012-03-19 21:19:14

您需要调用的getConnection之前实例化驱动程序:

String pdriver = "com.mysql.jdbc.Driver"; 
Class.forName(pdriver).newInstance(); 
+0

嗨,感谢您的建议,但现在我得到一个没有发现异常的类! – BodhiByte 2012-03-19 21:12:10

+0

您需要将jar库添加到您的类路径中。如果您使用Eclipse:构建路径。 – aleroot 2012-03-19 21:14:11