§H2 database
The H2 in memory database is very convenient for development because your evolutions are run from scratch when play is restarted. If you are using anorm you probably need it to closely mimic your planned production database. To tell h2 that you want to mimic a particular database you add a parameter to the database url in your application.conf file, for example:
db.default.url="jdbc:h2:mem:play;MODE=MYSQL"
§Target databases
MySql | MODE=MYSQL |
|
DB2 | MODE=DB2 | |
Derby | MODE=DERBY | |
HSQLDB | MODE=HSQLDB | |
MS SQL | MODE=MSSQLServer | |
Oracle | MODE=Oracle | |
PostgreSQL | MODE=PostgreSQL |
§Prevent in memory DB reset
H2 drops your database if there no connections. You probably don’t want this to happen. To prevent this add DB_CLOSE_DELAY=-1
to the url (use a semicolon as a separator) eg: jdbc:h2:mem:play;MODE=MYSQL;DB_CLOSE_DELAY=-1
§H2 Browser
You can browse the contents of your database by typing h2-browser
at the play console. An SQL browser will run in your web browser.
§H2 Documentation
More H2 documentation is available from their web site
Found an error in this documentation? The source code for this page can be found here. After reading the documentation guidelines, please feel free to contribute a pull request. Have questions or advice to share? Go to our community forums to start a conversation with the community.