Java 如何使用类似MS Access的目录路径连接MySQL数据库文件(.sql)?
对不起,也许这是我第二次问这个问题,因为没有得到任何答案 这是我的密码Java 如何使用类似MS Access的目录路径连接MySQL数据库文件(.sql)?,java,mysql,connection,Java,Mysql,Connection,对不起,也许这是我第二次问这个问题,因为没有得到任何答案 这是我的密码 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.ge
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毫秒前的。驱动程序尚未从服务器收到任何数据包。
这一问题的目的是:
我正在为许多用户创建一个应用程序,问题是他们对计算机一无所知,我必须让它尽可能简单
那么有没有办法通过目录路径与MYSQL类似的MS ACCESS连接?
还是有其他建议
谢谢。AFAIK,您不能在MySQL的JDBC url中插入文件名。MySQL需要运行,您需要通过其TCP端口连接到它。比如:
jdbc:mysql://localhost:3306/yourDatabaseName
参见初步定义
“连接到MySQL数据库文件”的措辞不正确
一个连接到MySQL数据库服务器,它允许访问数据库。因此,必须有一个MySQL服务器可以连接,下面将详细介绍
您的数据库.sql
文件是一个哑(纯文本)文件。在解释SQL查询之后,您需要一个专门的过程从中提取数据:数据库服务器
您可能假设您可以连接到一个文件,因为您习惯于使用MS Access文件。我既不是Java专家,也不是MS Access专家,但我不知道从Java访问MS Access“数据库”文件实际上意味着连接到某个中间件服务器,例如
答案
无法通过目录路径连接到MySQL数据库服务器:
- TCP
- 本地套接字(仅限Unix服务器)
- 命名管道(仅限Windows服务器)
- 共享内存(仅限Windows服务器)
- 在他们的计算机上安装MySQL服务器并将此转储加载到其中。显而易见,但不切实际,如果我听得清楚的话。虽然我猜这个安装肯定可以由Java应用程序自动执行
- 在自己的机器上安装MySQL服务器,并使其可以从用户的计算机访问。主要缺点:它需要连接用户。您可能还希望为每个用户创建一个不同的数据库
- 使用实际上没有服务器的数据库引擎,例如。这似乎是你最好的选择。对于通常的操作,它的SQL语法实际上与MySQL相同。一定有很多JDBC驱动程序。再说一次,我不是Java最好的顾问,但似乎是一个认真的候选人
\\fileserver\db.sqlite
),那么您就可以开始了。如果没有,则可以将网络共享装载为虚拟驱动器。但是,如果要由并发线程修改数据库,则需要注意一些问题。我建议您发布另一个关于跨网络共享SQLite数据库的问题,以便SQLite专家能够参与进来。不过,我相信,如果您需要从几个不同步的进程/计算机访问数据库,那么您实际上需要一个真正的数据库服务器。