所以我最近刚开始学习数据库如何工作,如何使用SQL等。并决定开始实施嵌入式数据库到我的Java应用程序(特别是H2数据库),似乎我被编码在计算机上工作得相当好。
当我搬了不同的计算机,继续我的编码,我注意到,即使我移植了嵌入式数据库文件(H2 - *罐子)我在第一台计算机创建的准备表不上第二个存在。我不知有偏见,通过数据库引擎所产生的实际数据也存储在嵌入式数据库文件。
所以我的问题是,在从数据库中的数据实际存储?是有可能制备其中已经包含的数以千计的记录数据库,并与实际应用分发?
我还要提到的是我连接到第一台计算机上的数据库的方式是通过JDBC连接即网址:JDBC:H2:〜/测试,当我试图连接到数据库中的第二台计算机上它不存在。
谢谢!
阅读FAQ:
到哪里都是在数据库文件存放?
当使用像
jdbc:h2:~/test
数据库URL,数据库存储在用户目录中。对于Windows,这通常是C:\Documents and Settings\<userName>
或C:\Users\<userName>
。如果基本目录中未设置(如jdbc:h2:./test
),数据库文件存储在应用程序启动的目录(当前工作目录)。当使用从开始菜单的H2控制台应用程序,这是<Installation Directory>/bin
。基本目录可以在数据库URL进行设置。可以使用一个固定的或相对路径。当使用URLjdbc:h2:file:./data/sample
,数据库被存储在目录中的数据(相对于当前工作目录)。如果它还不存在的目录会自动创建。也可以使用完全合格的目录名称(和Windows,驱动器名称)。例如:jdbc:h2:file:C:/data/test
该h2-*.jar
只是数据库引擎(代码)。它是只读的,并没有任何信息存储。在H2中的数据可以存储在存储器中或在一个指定的文件的磁盘。实际上,您指定一个:
JDBC:h2:~/test/
您将在下面test
子目录你的home目录找到你的数据库。只需将这些文件复制到另一台计算机和H2上的主目录,只要它使用相同的URL会发现它们。
在Windows中,您需要设置JDBC URL这个值:
JDBC URL: jdbc:h2:mem:testdb