2013-07-21 60 views
2

我在netbeans中创建了一个Derby嵌入式数据库。现在我无法找到netbeans放置数据库的文件夹。我的连接网址是jdbc:derby:Inventory;create=true;。 netbeans默认放置数据库文件在哪里? 我正在使用Ubuntu 12.04。NetBeans在哪里创建Derby嵌入式数据库

回答

4

默认的Linux Netbeans的数据库文件夹:

/home/username/.netbeans-derby/ 

有一个文件夹Inventory

的NetBeans 7.2.1 :

/home/username/.netbeans/7.2.1/derby/ 

你可以搜索

sudo find/-name Inventory -print 

属性:

右击Java DB选择创建数据库。

enter image description here

+0

非常感谢。它不在.netbeans-derby中,而是在'/ home/tariq/.netbeans/7.2.1/derby/Inventory'中,请将其与此目录一起发布,我会将其标记为答案。 – Tariq

1

数据库名称“Inventory”是一个相对名称,因此它将位于Derby主目录的“Inventory”子目录中。程序运行时,Derby主目录默认为当前工作目录。所以你只需要找出程序运行时当前工作目录的位置。

然而,这是相当困难的事情。相反,更改您的连接URL,以便它指定绝对名称,例如

jdbc:derby:/home/tariq/myDerbyDBs/Inventory 

然后您将很容易地找到您的数据库。 (请确保您首先创建一个 '/ home /塔里克/ myDerbyDBs' 目录。)

+0

当前工作目录指在项目的NetBeans执行的目录?或者我的JRE存在的地方?或Derby jre文件存在的位置?在所有情况下,我找不到我的数据库。 – Tariq

+0

我认为绝对的网址是一个不好的做法。这将应用程序绑定到一个非常特定位置的数据库。例如,如果其他人克隆源代码并且没有用户名'tariq'?例如,如果某人简单地想要运行该应用程序并且它们不具有相同的用户名?即使在测试/开发过程中,我仍然认为这是不好的做法。答案是理解在默认情况下在嵌入式Derby中放置数据库的位置:http://db.apache.org/derby/docs/10.14/devguide/cdevdvlp846369.html – Kerry

+0

OK,@Kerry,我认为这是一个很好的点。只要你知道你当前的工作目录在哪里,相对文件路径就可以。原来的问题涉及到一个用户,他对当前的工作目录是什么感到困惑,并且必须运行一个'find'命令来确定他们的数据库在哪里。顺便说一句,我很高兴你阅读了文档! –

相关问题