使用Java,我在尝试连接到mysql数据库时遇到此错误:
java.sql.SQLException: No suitable driver found for
jdbc:mysql://localhost:3306/mysql at
java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at MyTest1.main(MyTest1.java:28)
我正在使用mysql-connector-java-5.1.18-bin.jar
驱动程序。它在我的构建路径中。我重启了MySQL。我还从root命令行登录,没有密码,连接正常。我目前没有在netstat中看到端口3306。以前我得到了一个不同的错误(我没有更改代码)。错误是“jdbc mysql访问被拒绝用户'root'@'localhost密码NO”
try {
Class.forName("com.mysql.jdbc.Driver");
}
catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
String url = "jdbc:mysql://localhost:3306/mysql";
Connection con = DriverManager.getConnection(url, "root", "");
}
catch (Exception e){
e.printStackTrace();
}
答案 0 :(得分:42)
在这种特殊情况下(假设Class#forName()
没有抛出异常;你的代码就是继续运行而不是抛出异常),这个SQLException
表示Driver#acceptsURL()
已为任何已加载的驱动程序返回false
。
事实上,您的JDBC URL错误:
String url = "'jdbc:mysql://localhost:3306/mysql";
删除单引号:
String url = "jdbc:mysql://localhost:3306/mysql";
答案 1 :(得分:22)
您必须为 mysql-connector.jar
设置 classpath在eclipse中,使用构建路径
如果您正在开发任何网络应用,则必须将 mysql-connector 放入WEB-INF的 lib文件夹目录中网络应用
答案 2 :(得分:10)
使用Netbean时,转到项目选项卡下,然后单击下拉按钮以选择Libraries文件夹。右键单击d Library文件夹,然后选择“添加JAR /文件夹”。找到你的ur系统上的mysql-connectore-java。 * .jar文件。 这对我有用,我希望它对你也有用。 如果遇到任何问题,请恢复
答案 3 :(得分:4)
这个错误发生在我身上,由于你的eclipse项目(或你的IDE)中没有包含mysql-connector.jar,所以通常会出现问题。
就我而言,这是因为操作系统出现问题。
我在phpmyadmin中编辑了一个表,并且mysql挂了,我重新启动了Ubuntu。我没有成功地清理了项目。今天早上,当我尝试使用网络服务器时,它第一次完美运行。
在第一次重启时,操作系统识别出存在问题,在第二次重启后,操作系统已修复。我希望这会为那些“可能”遇到这个问题的人节省一些时间!
答案 4 :(得分:3)
描述数据库驱动程序的字符串中的印刷错误也会产生错误。
指定为:
的字符串"jdbc:mysql//localhost:3307/dbname,"usrname","password"
会导致“找不到合适的驱动程序”错误。此示例中缺少“mysql”后面的冒号。
正确的驱动程序字符串是:
jdbc:mysql://localhost:3307/dbname,"usrname","password"
答案 5 :(得分:0)
我有同样的问题我使用如果开发jsp修复此问题,将mysql connetor放入 WEB-INF-> lib 文件夹中,然后将其放入eclipse右键单击并转到build-path - >在库选项卡中配置build patha添加外部jar文件给出lib文件夹所在的位置
答案 6 :(得分:0)
告诉我的解决方案:就我而言,图书馆和项目并没有自动添加到类路径中(我不知道为什么),甚至点击"添加到构建路径& #34;选项。所以我继续跑 - >运行配置 - > classpath并添加了我需要的所有内容。
答案 7 :(得分:0)
(如果你的网址是正确的,仍然会收到错误信息) 按照以下步骤在netbeans中设置Classpath,
现在您将看到.jar文件将包含在库下。现在您不需要使用Class.forName(“com.mysql.jdbc.Driver”)行;还
如果上述方法不起作用,请检查mysql-connector版本(例如: - 5.1.35)并为您尝试更新或适合的版本。
答案 8 :(得分:-1)
我得到同样的错误。我刚从项目中删除了mysql-connector jar并下载了最新版本。清理了我的项目,现在就可以了。