我想知道是否有可能使用数据库文件从mysql,没有服务器运行。只是复制db文件并将其放在某个地方,然后使用"jdbc:mysql://localhost:3306/table";
改成"jdbc:mysql://C:/Users/me/Desktop/table";
这是有效的还是有更好的方法?
这对于Mysql
是不可能的。
Sqlite
是一个Serverless
数据库。你可能正在寻找一个嵌入式数据库,即,如你所说的一个库,能够访问数据库上的文件,而不需要服务器。
MySQL有一个可嵌入版本:http://www.mysql.com/oem/
您可能还需要检查H2: http://www.h2database.com/
或Apache Derby: http://db.apache.org/derby/
或HSQLDB: http://hsqldb.org/
简短的回答:no.
长话短说:你必须在Java中重新创建MySQL守护进程。特别是,JDBC必须知道文件内部的结构。这些文件相当复杂,这将是相当痛苦的。
这意味着你必须自己编写能够解析和操作MySQL文件的代码。这将是一项极其复杂的任务。
是的,有更好的方法。如果你想使用MySQL, 使用MySQL。
另一个选择是使用MySQL的嵌入式版本,或者像SQLite。