Hi
I don't think Derby has CREATE/DROP database statements. Derby has
support for backup/restore.
One way to simulate DROP/CREATE in test scripts is to restore/create
(URL properties : restoreFrom and createFrom)
an empty database from a backup after each test. Backup will take
some time, but I guess in your test environment
that is going to be only one time overhead.
ij scriipt:
---create a new database
connect 'jdbc:derby:wombat;create=true';
---take database backup before doing anything else
call SYSCS_UTIL.SYSCS_BACKUP_DATABASE('ext/mybackup');
connect 'jdbc:derby:wombat;shutdown=true';
connect 'jdbc:derby:wombat;restoreFrom=ext/mybackup/wombat';
You should be able to make above call through JDBC based java program..
Thanks
-suresh
Nyenyec N wrote:
>Hi,
>
>I have several JUnit tests that I run as part of the builds and also
>from inside the Eclipse IDE.
>So far my app uses SQL Server and HSQLDB. In both cases I found a way
>to quickly create a clean database (with no tables) use it and discard
>it after each test.
>
>In SQL Server I use the CREATE/DROP DATABASE call, in HSQLDB I simply
>use an in-memory instance. Creating and discarding a database takes
>about 2 secs in SQL Server and 1 sec in HSQLDB.
>
>In Derby however, connecting to a URL like this
>"jdbc:derby:temp/testdb;create=true"
>takes about 20 secs on the same machine (P4, 1Gb mem).
>Is there a way to do this quicker or approximate the behavior
>described above in some other way?
>
>Thanks,
>Nyenyec
>
>
>