Thanks. I will try this method. On Tue, Mar 23, 2010 at 3:04 PM, Ryan How <[email protected]> wrote: > I haven't used in memory databases. But H2 usually closes a database after > all connections to it close. So you either need to use a connection pool. > Keep a single connection open as a "control" connection. Delay the closing > of the database, or have it not close the database until you close the JVM. > > See documentation under In memory databases on the features page > > "By default, closing the last connection to a database closes the database. > For an in-memory database, this means the content is lost. To keep the > database open, add ;DB_CLOSE_DELAY=-1 to the database URL. To keep the > content of an in-memory database as long as the virtual machine is alive, > use jdbc:h2:mem:test;DB_CLOSE_DELAY=-1. " > > Hope this helps, > > Ryan > > > On 23/03/2010 9:44 PM, ramon_garcia wrote: > > According to the documentation, one should use URLs like > jdbc:h2:mem:name > > so that an H2 database in memory persists accross connections. > However, this does not work with the simple example bellow: > > --------------------------- > package mytest; > > import java.sql.Connection; > import java.sql.SQLException; > > > > import org.h2.jdbcx.JdbcDataSource; > import org.junit.Test; > > > public class TestH2DataSource { > @Test > public void doTest() throws SQLException { > JdbcDataSource s = new JdbcDataSource(); > s.setURL("jdbc:h2:mem:database"); > Connection c1 = s.getConnection(); > c1.createStatement().execute("create table foo (a integer, b > integer)"); > c1.close(); > Connection c2 = s.getConnection(); > c2.createStatement().execute("insert into foo (a, b) VALUES (1, > 3)"); > c2.close(); > } > } > > > ----------------------------------------------------- > > The statement insert fails because the table foo does not exist. The > test works correctly if both statements are executed against the same > connection. > > > Best regards, > > Ramon > > > > -- > You received this message because you are subscribed to the Google Groups > "H2 Database" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/h2-database?hl=en. >
-- You received this message because you are subscribed to the Google Groups "H2 Database" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/h2-database?hl=en.
