Hsql
Versions
Default Driver
Sql Script Syntax
Compatibility
- DDL exported by Hsql can be used unchanged in a Flyway migration.
- Any Hsql sql script executed by Flyway, can be executed by the Hsql tools (after the placeholders have been
replaced).
Example
/* Single line comment */
CREATE TABLE test_data (
value VARCHAR(25) NOT NULL PRIMARY KEY
);
/*
Multi-line
comment
*/
-- Sql-style comment
-- Placeholder
INSERT INTO ${tableName} (name) VALUES ('Mr. T');
CREATE TRIGGER uniqueidx_trigger BEFORE INSERT ON usertable
REFERENCING NEW ROW AS newrow
FOR EACH ROW WHEN (newrow.name is not null)
BEGIN ATOMIC
IF EXISTS (SELECT * FROM usertable WHERE usertable.name = newrow.name) THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'duplicate name';
END IF;
END;
Limitations
- No concurrent migration support (to make Flyway cluster-safe) with Hsql 1.8, as this version does not properly support SELECT ...
FOR UPDATE locking
Derby