2016-06-16 7 views
0

たとえば、ユニットテストごとに、同じJVM内で使用する "異なる"データベースが必要です。 HSQLDB:あなたは、JDBCへの新しい接続を作成する場合は、この時点の後HSQLDB複数のメモリデータベースを持つ方法

String DB_CONNECTION_STR = "jdbc:hsqldb:mem:MySpecialTestDb"; 
String DB_USERNAME_STR = "sa"; 
String DB_USERNAME_PASSWORD = ""; 
DriverManager.getConnection(DB_CONNECTION_STR, DB_USERNAME_STR, DB_USERNAME_PASSWORD); 

答えて

1

は、「初めて」あなたはHSQLのインメモリ・データベースを作成し、それは「標準的な」パスワードになりますように見えますmem:MySpecialTestDbこれは同じDBに接続します(そして、その中に権限を与えていない限り、同じユーザ名とパスワードが必要です)。だから、第二DBを作成するだけで別の名前を指定し、かつ/またはパスワード:

String DB_CONNECTION_STR = "jdbc:hsqldb:mem:AnotherTestDb"; 
String DB_USERNAME_STR = "sa"; // could use different here, doesn't matter 
String DB_USERNAME_PASSWORD = ""; 
DriverManager.getConnection(DB_CONNECTION_STR, DB_USERNAME_STR, DB_USERNAME_PASSWORD); 

、それが効果的にあなたのためのインメモリデータベースに新しいを作成します。

も参照してください。https://stackoverflow.com/a/23544323/32453

関連する問題