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