DbSchema lets you design, manage, and document HSQLDB databases. Create ER diagrams, define tables and columns, and generate SQL scripts - with or without a live database connection.
Use Git to share the design, compare it with the HSQLDB database, and deploy changes. DbSchema also includes a data editor, query builder, and HTML5 documentation - everything you need in one tool.
Download DbSchema Download HSQLDB JDBC Driver
HSQLDB (HyperSQL Database) is a compact, standards-compliant SQL database written entirely in Java. It has long served as the embedded database for Java desktop applications, legacy Java EE components, and unit testing frameworks such as DBUnit. Its small footprint and full SQL-92 compliance make it well-suited for testing complex queries, but the absence of a built-in visual interface means schema work is typically done in code. DbSchema brings a graphical schema designer to HSQLDB with support for file-based, in-memory, and server-mode connections.
File-based HSQLDB databases can be opened directly in DbSchema even when the application that owns them is offline. This makes it practical to review, document, or modify a schema outside the normal application lifecycle — particularly useful for legacy systems where schema changes are still applied manually through DDL scripts.
The table editor provides a form-based interface for defining columns, selecting types, setting
nullable flags, specifying default values, and configuring constraints. HSQLDB-specific types
such as LONGVARCHAR and BINARY appear in the type picker alongside
standard SQL types, reducing the need to consult the HSQLDB SQL guide for each change.
When HSQLDB is used as a test database, it needs data that exercises edge cases in business logic. DbSchema's data generator respects foreign key constraints and lets you configure per-column generation rules — regular expressions, enumerated value sets, date ranges, and numeric distributions — to produce data that mirrors the shape of production records.
For file-based databases, use jdbc:hsqldb:file:/path/to/db. For in-memory
databases, use jdbc:hsqldb:mem:mymemdb. For server mode, use
jdbc:hsqldb:hsql://host:9001/dbname after starting the HSQLDB server with
java -jar hsqldb.jar --database.0 file:mydb --dbname.0 mydb. DbSchema includes
the HSQLDB JDBC driver, so no additional download is required for standard HSQLDB versions.