【问题标题】:java.sql.SQLException Path to 'path' does not existjava.sql.SQLException 到“路径”的路径不存在
【发布时间】:2017-01-20 06:28:41
【问题描述】:

我写这篇文章是因为我创建了一个简单的登录 GUI 应用程序来测试 sqlite 数据库,因为我是数据库系统的学生,并且对它不熟悉,我通过 eclipse 使用 java,每当我运行应用程序时,此消息

c:user//path 的 java.sql.SQLException 路径不存在

Error Screenshot

我在谷歌上搜索了很多但找不到解决方案在 stackoverflow 上有一个类似的问题但没有足够的答案与我的问题相关,我想知道如何更改代码以使应用程序工作和连接数据库?

任何帮助将不胜感激。谢谢

代码如下:

package dbms;

import java.sql.*;
import javax.swing.*;

public class dbConnection {

Connection conn = null;

public static Connection dbConnector(){

    try{
        Class.forName("org.sqlite.JDBC");
        Connection conn = DriverManager.getConnection("jdbc:sqlite:‪‪‪C:\\Users\\chusm\\workspace\\DBMS\\SQlite\\DBMS.sqlite");
        JOptionPane.showMessageDialog(null, "Connection Successful!!!");
        return conn;
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(null, e);
        return null;
    }
  }
}

【问题讨论】:

  • 在 catch 块内,写一行 e.printStackTrace(); 并在此处发布。它可能有助于调试。
  • @RyanZink 不,这是从DriverManager 获取连接的正确方法。

标签: java sql sqlite error-handling path


【解决方案1】:

您的网址中似乎有一些奇怪的空格操作(在“jdbc:sqlite”和“C:”之间)

请将这段代码复制粘贴到你的项目中并运行它(我只删除了奇怪的空格,其余的和你的代码一模一样)

package dbms;

import javax.swing.*;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;

public class StackOverflowExample {

    Connection conn = null;

    public static Connection dbConnector() {

        try {
            Class.forName("org.sqlite.JDBC");
            Connection conn = DriverManager.getConnection("jdbc:sqlite:C:\\Users\\chusm\\workspace\\DBMS\\SQlite\\DBMS.sqlite");
            JOptionPane.showMessageDialog(null, "Connection Successful!!!");
            return conn;
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e);
            return null;
        }
    }

    public static void main(String[] args) {
        Connection connection = dbConnector();
    }

}

【讨论】:

  • 打开 IDE 并写入 String x = "";在 "" 中粘贴您在上面发布的 url 的内容,您会注意到我所说的奇怪的空格看起来像 String x = "jdbc:sqlite:\u202A\u202A\u202AC:\\\\Users\\ \\chusm\\\\工作区\\\\DBMS\\\\SQlite\\\\DBMS.sqlite";那些不可见的 unicode 字符是问题
  • 现在我明白了,实际上 Eclipse 并没有让我保存或编译程序,并问我是否要使用 unicode UTF-8 之类的东西保存它,我以这种方式保存它也许创建了问题。非常感谢您宝贵的时间和帮助。
  • ![enter image description here](i.stack.imgur.com/4LHSq.png) @Alexandru 这就是我所说的,你知道为什么会出现这个错误,它是什么意思。当我使用路径语句初始化字符串并运行程序时出现此错误。
  • 我怀疑你复制原始 url 的地方有奇怪的空格,或者你复制它的文件浏览器。每当您收到这样的消息时,这是一个很好的提示,表明您有不可见的字符,您应该检查文件中的新增内容。
猜你喜欢
  • 2019-12-17
  • 2012-04-07
  • 1970-01-01
  • 1970-01-01
  • 2019-06-04
  • 2021-05-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多