gpt4 book ai didi

java数据库管理连接错误

转载 作者:行者123 更新时间:2023-12-01 00:50:14 25 4
gpt4 key购买 nike

我正在使用以下代码建立 SQL 连接,但出现错误。

我正在使用 netbeans 并且 netbeans 本身能够连接到数据库。由于某种原因,我的代码不允许我连接并声明我没有合适的驱动程序。我正在导入 SQL 驱动程序,所以我不确定哪里出了问题。

我是否形成了不正确的东西?

May 20, 2013 11:06:18 AM sample_server.DatabaseManagement Connection
SEVERE: No suitable driver found for jdbc:mysql://XXXXXXX:3306/javaBBS
java.sql.SQLException: No suitable driver found for jdbc:mysql://XXXXXX:3306/javaBBS
at java.sql.DriverManager.getConnection(DriverManager.java:604)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at sample_server.DatabaseManagement.Connection(DatabaseManagement.java:31)
at sample_server.OneLiner.<init>(OneLiner.java:14)
at sample_server.MenuSystemClass.MainMenu(MenuSystemClass.java:38)
at sample_server.doComms.run(Sample_server.java:55)
at java.lang.Thread.run(Thread.java:722)

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package sample_server;

import com.sun.corba.se.impl.util.Version;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*
* @author Aaron
*/
public class DatabaseManagement {
DatabaseManagement(){}
/**
*
*/
public void Connection() {
Connection con = null;
Statement st = null;
ResultSet rs = null;

String url = "jdbc:mysql://XXX.XXX.XXX.XXX:3306/javaBBS";
String user = "java";
String password = "notarealpassword";

try {
con = DriverManager.getConnection(url, user, password);
st = con.createStatement();
rs = st.executeQuery("SELECT VERSION()");

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

} catch (SQLException ex) {
Logger lgr = Logger.getLogger(Version.class.getName());
lgr.log(Level.SEVERE, ex.getMessage(), ex);

} finally {
try {
if (rs != null) {
rs.close();
}
if (st != null) {
st.close();
}
if (con != null) {
con.close();
}

} catch (SQLException ex) {
Logger lgr = Logger.getLogger(Version.class.getName());
lgr.log(Level.WARNING, ex.getMessage(), ex);
}
}
}
}


try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch(Exception e) {
System.out.println(e);
}
con = DriverManager.getConnection(url, user, password);
st = con.createStatement();
rs = st.executeQuery("SELECT VERSION()");

我添加了上面的内容,它仍然抛出同样的错误。我需要通过某种方式将 Class 注册到 DriverManager 吗?

最佳答案

正如每个 JDBC 教程都会向您展示的那样,您必须调用

Class.forName("com.mysql.jdbc.Driver");

在从 DriverManager 获取 Connection 之前加载驱动程序类。

此外,您需要在构建路径中包含 mysql 连接器。

关于java数据库管理连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16653827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com