0
我正在使用Derby Embedded DB运行一组Junit的Java + Spring项目。我希望能够使用Squirrel SQL客户端查询嵌入式数据库,而不是通过我的junit测试直接访问它。原因是我正在处理一些非常复杂的数据结构,并且使用编辑器查询将对构建我的测试用例非常有帮助。当我在调试中运行我的JUnit时,我在数据库初始化后放置一个断点并将其保留在那里,这意味着此时嵌入的数据库已创建。下面显示了连接DB的弹簧配置。与松鼠连接到Derby嵌入式数据库
<bean id="targetDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" />
<property name="url" value="jdbc:derby:memory:unitTestDB;create=true" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>
下面显示控制台输出,数据库在这一点上满载...
Executing SQL script from class path resource [mydb/create-schema.sql]
Done executing SQL script from class path resource [mydb/create-schema.sql] in 107 ms.
Executing SQL script from class path resource [mydb/create-sequences.sql]
Done executing SQL script from class path resource [mydb/create-sequences.sql] in 403 ms.
Executing SQL script from class path resource [mydb/create-tables.sql]
Done executing SQL script from class path resource [mydb/create-tables.sql] in 3844 ms.
Executing SQL script from class path resource [mydb/create-views.sql]
Done executing SQL script from class path resource [mydb/create-views.sql] in 2118 ms.
Executing SQL script from class path resource [mydb/MY_TABLE.sql]
Done executing SQL script from class path resource [mydb/MY_TABLE.sql] in 1380 ms.
我使用我的JUnit套件使用,并创建了一个看起来像下面的别名相同的驱动程序在松鼠......
我可以创建一个连接,但它似乎像松鼠是无法加载模式+表。
什么可能我做错了吗?
有趣的是,有一种感觉是这样的事情正在发生。 – Jason
只有一个JVM实例可以安装嵌入式数据库,这是正确的。想象一下,两台数据库服务器试图同时管理同一个磁盘上的数据库。这是一样的想法。 – Bill