我在Windows 7中使用eclipse进行JAVA开发,我将项目放在D:\ workspace中。
以下代码尝试连接到SQLite数据库,而jdbc地址是jdbc:sqlite:sample.db
,JAVA在哪里寻找sample.db?
public class Sample{
public static void main(String[] args) throws ClassNotFoundException{
Class.forName("org.sqlite.JDBC");
Connection connection = null;
try{
connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
System.out.println("I got connection.");
}catch(SQLException e){
System.out.println(e.getMessage());
}
}
}
我看到有使用绝对路径的示例,但我想知道在使用相对路径时将DB文件放在何处。
另外,如果我把Class放在某个包中,文件位置会不同吗?
答案 0 :(得分:1)
默认情况下,db文件将在项目目录的根目录中创建。
您可以与sql lite一起使用的其他路径格式是:
jdbc:sqlite://dirA/dirB/dbfile
jdbc:sqlite:/DRIVE:/dirA/dirB/dbfile
jdbc:sqlite:///COMPUTERNAME/shareA/dirB/dbfile
答案 1 :(得分:-1)
SQLite支持内存数据库管理,不创建任何数据库文件。要在Java代码中使用内存数据库,请按如下方式获取数据库连接:
Connection connection = DriverManager.getConnection("jdbc:sqlite::memory:");
如果你想要物理SQLite数据库,你需要使用SQLite manager或Mozilla或chrome附加插件创建SQLite数据库。并给出这样的路径
<强>窗强>
Connection connection = DriverManager.getConnection("jdbc:sqlite:C:/work/mydatabase.db");
Linux,Mac OS X
Connection connection = DriverManager.getConnection("jdbc:sqlite:/home/leo/work/mydatabase.db");