当前位置: 首页 > 面试题库 >

如何使用类似于MS Access的目录路径与MySQL数据库文件(.sql)连接?

连时铭
2023-03-14
问题内容

对不起,也许这是我第二次因为没有得到任何答案而问这个问题。

这是我的代码

    try{
    File  f = new File("Database.sql");
    if(f.exists()){
        Class.forName("com.mysql.jdbc.Driver").newInstance();
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost/"+f.getName(),"","");
    }else{
        f.createNewFile();
        System.out.println("file created");
        //also do the connection
    }
    }catch(Exception ex){
       System.out.println(ex.getMessage());
    }

这是错误:

通信链接失败最近一次成功发送到服务器的数据包是在0毫秒之前。 驱动程序尚未收到来自服务器的任何数据包。

这个问题的目的是:我正在创建一个适合许多用户的应用程序,问题是他们对计算机一无所知,因此我必须使其尽可能简单。

那么 ,有什么方法可以通过目录路径与MY SQL进行连接,例如MS ACCESS?

或者还有其他建议吗?

谢谢 。


问题答案:

初步定义

“连接到 MySQL数据库文件 ”的措词不正确。

一个真正 连接 到MySQL数据库 服务器 ,它允许 访问 一个 数据库
。因此,必须有一个要连接的MySQL服务器,有关更多信息,请参见下文。

您的Database.sql文件是数据库转储文件,也就是说,是哑文件(纯文本)。在解释您的SQL查询之后,您需要一个专门的过程来从中提取数据:数据库服务器。

您可能会假定一个人可以连接到一个 文件, 因为您曾经使用过MS Access文件。我既不是Java专家也不是MS
Access专家,但是我不了解从Java访问MS Access“数据库”文件实际上意味着连接到某些中间件 服务器
,例如Microsoft的ODBC。

答案

无法通过目录路径连接到MySQL数据库 服务器
。唯一的本地方法是:

  • TCP协议
  • 本地套接字(仅限Unix服务器)
  • 命名管道(仅Windows服务器)
  • 共享内存(仅Windows服务器)

可能存在一些第三方软件,它们提供其他协议,我不知道这些协议,但是它们都会减少到同一问题:必须在某个地方运行MySQL服务器。

第二种想法实际上是在不运行外部MySQL服务器的情况下访问MySQL数据的一种方法:
嵌入式MySQL服务器C库。我从未亲自尝试过,但是对于独立应用程序来说,这似乎是一个可行的选择。但是,如果您打算跨多个进程或计算机共享相同的MySQL数据,我认为这不是理想的解决方案。

解决方法

现在,我了解到您正在基于SQL转储文件(可能是从MySQL服务器转储)形式的数据构建Java桌面应用程序。如果您希望用户能够从此Java应用程序访问此数据,则可以看到一些选项:

  • 在他们的计算机上安装MySQL服务器,并将此转储加载到其中。如果我听清楚你的话,那显然是地狱,但不切实际。尽管我猜想您的Java应用程序肯定可以自动执行此安装。

  • 在自己的计算机上安装MySQL服务器,并使其可从用户的计算机访问。主要缺点:它要求您的用户已连接。您可能还想为每个用户创建一个不同的数据库。

  • 使用实际上没有服务器的数据库引擎,例如SQLite。这似乎是您的最佳选择。对于常规操作,其SQL语法实际上与MySQL相同。必须有很多JDBC驱动程序。同样,我不是Java方面的最佳顾问,但是这个人似乎是一个不错的候选人。



 类似资料:
  • 我已经下载了一些人的laravel项目,并尝试运行它。还附加了一个“.sql”文件。 项目的.gitignore文件中提到了.env'-文件,因此它没有包含在存储库中(我认为这是最佳实践)。我将此文件复制到项目的根目录中:https://github.com/laravel/laravel/blob/master/.env.example 我已将此文件的数据库相关部分配置为: DB_连接=xamp

  • 本文向大家介绍Python如何获取文件路径/目录,包括了Python如何获取文件路径/目录的使用技巧和注意事项,需要的朋友参考一下 一、获取文件路径实现 1.1 获取当前文件路径 __file__变量其实有个问题,当文件被是被调用文件时__file__总是文件的绝对路径;但当文件是直接被执行的文件时,__file__并不总是文件的绝对路径,而是你执行该文件时给python传的路径。比如你是pyth

  • 问题内容: 我正在尝试从我的网站连接数据库,并使用C ++显示一些行。因此,基本上我正在尝试制作一个从站点数据库中的表中进行选择查询的应用程序。现在,这必须可行,因为我已经看到大量的应用程序正在这样做。 我该怎么做呢?有人可以举一个例子,告诉我应该使用哪些库吗? 问题答案: 在这里找到:

  • 我正在尝试修复与MySQL数据库的连接问题。几个小时后,我的服务器意外地关闭了与MySQL数据库的连接。 这是我的错误代码: 通用域名格式。mysql。jdbc。例外。jdbc4。CommunicationsException:从服务器成功接收到的最后一个数据包是37521865毫秒前。最后一个成功发送到服务器的数据包是37521865毫秒前。长于服务器配置的“等待超时”值。在应用程序中使用之前,

  • 问题内容: 对于bash大师来说,这将是一个 非常 简单的免费赠品: 题 使用bash,如何从目录中的所有文件中创建类路径? 细节 给定目录: 除了* .jar文件外,该文件仅包含以下内容: 我需要以以下形式创建用冒号分隔的类路径变量: 几乎可以表达我正在寻找的逻辑的一些伪代码大致如下: 通过bash脚本完成此操作的 简单 方法是什么? 问题答案: 新答案 (2012年10月) 无需手动构建类路径

  • 我正在尝试用php将.sql文件导入mysql数据库,但我不能 THNX.