0

我在指定路径时遇到问题(我在以下文件夹中有两个文件:comments.frm 和 db.opt:C:\xampp\mysql\data\feedback)...我正在使用 XAMPP 和 mySQL。我不知道为什么我有一个错误?请看一下我的代码的这一部分:

public void readDataBase() throws Exception {
   try {
        // This will load the MySQL driver, each DB has its own driver
      Class.forName("com.mysql.jdbc.Driver");
      // Setup the connection with the DB
    connect = DriverManager
         .getConnection("jdbc:mysql://localhost//feedback"
              + "user=root&password=1234");

PS:我的 localhost 密码是 12345678

4

6 回答 6

2

你应该试试

DriverManager.getConnection("jdbc:mysql://localhost/feedback", "root", "1234");
于 2013-04-04T08:07:07.263 回答
2

尝试

 connect = DriverManager
     .getConnection("jdbc:mysql://localhost/feedback?user=root&password=1234")

(您忘记了“反馈”后的问号)

于 2013-04-04T08:07:41.740 回答
2

为了更清楚起见,您可以在获得连接时使用其他重载方法。

Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://<db_ip>/<db_name>", 
    "<username>", "<pwd>");
于 2013-04-04T08:08:27.000 回答
1

我认为你需要使用这个:

DriverManager.getConnection("jdbc:mysql://localhost:3306/feedback", "root", "1234");

我检查了我的旧项目,发现我在这里没有使用双斜杠/feedback

您也可以像这样指定编码:

 DriverManager.getConnection("jdbc:mysql://localhost:3306/feedback?characterEncoding=UTF-8&characterEncoding=Cp1251", "root", "1234");

还有一个建议。不要使用硬代码。从属性文件中获取 url、密码和用户名。

于 2013-04-04T08:11:03.987 回答
1

试试这个希望对你有帮助!!!

Class.forName("com.mysql.jdbc.Driver");
connect = DriverManager.getConnection("jdbc:mysql://localhost/feedback?"+"user=root&password=1234");

另请参阅 URL 错误,例如:

jdbc:mysql://localhost//feedback?

// after localhost... check and try my code...

.

于 2013-04-04T08:14:22.257 回答
1

很多答案,但每个人都忘记了数据库的端口。

如果您使用 mysql,请尝试 3306 作为 db 端口。
http://www.petefreitag.com/articles/jdbc_urls/ - jdbc url 列表(示例)

try 
{ 
    conn = DriverManager.getConnection("jdbc:mysql://" + dbHost + ":" + dbPort + "/" + dbName, user, passwd); 
} 
catch(SQLException sqle) 
{ 
    System.out.println("Connection fails: " + sqle.getMessage()); 
}
于 2013-04-04T08:15:44.793 回答