H2 Databaseにテーブルを作成する際にgen_random_uuid関数が見つからないとエラーになってしまいました。
DROP TABLE if exists sample CASCADE;
CREATE TABLE sample (
id uuid DEFAULT gen_random_uuid()
) ;
SQL State : 90022
Error Code : 90022
Message : 関数 "gen_random_uuid" が見つかりません
Function "gen_random_uuid" not found; SQL statement:
CREATE TABLE sample (
id uuid DEFAULT gen_random_uuid()
) [90022-214]
CREATE TABLEよりも先にエイリアスを作成しておくとエラーを回避できます。
DROP ALIAS IF EXISTS gen_random_uuid;
CREATE ALIAS gen_random_uuid AS '
import java.util.UUID;
@CODE
java.util.UUID genRandomUuid() throws Exception {
return UUID.randomUUID();
}
';
DROP TABLE if exists sample CASCADE;
CREATE TABLE sample (
id uuid DEFAULT gen_random_uuid()
) ;
https://www.h2database.com/html/commands.html
コメント