【发布时间】:2018-02-23 19:39:01
【问题描述】:
我在启动应用程序时遇到此错误,该应用程序在启动时会从表中读取一些数据:
org.h2.jdbc.JdbcSQLException: Unknown data type: "ENUM"; SQL statement:
CREATE CACHED TABLE PUBLIC.POWERPLANT(
POWERPLANTID INT NOT NULL,
ORGNAME VARCHAR(25) NOT NULL,
ISACTIVE BOOL NOT NULL,
MINPOWER INT NOT NULL,
MAXPOWER INT NOT NULL,
RAMPRATE INT,
RAMPRATESECS INT,
POWERPLANTTYPE ENUM('OnOffType','RampUpType'),
CREATEDAT TIMESTAMP NOT NULL,
UPDATEDAT TIMESTAMP NOT NULL
) [50004-186]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.command.Parser.parseColumnWithType(Parser.java:3990)
at org.h2.command.Parser.parseColumnForTable(Parser.java:3853)
at org.h2.command.Parser.parseCreateTable(Parser.java:5761)
at org.h2.command.Parser.parseCreate(Parser.java:4149)
at org.h2.command.Parser.parsePrepared(Parser.java:350)
at org.h2.command.Parser.parse(Parser.java:305)
at org.h2.command.Parser.parse(Parser.java:277)
这是我的连接字符串:
db.url = "jdbc:h2:~/path/to/db/file;MODE=MySQL;INIT=CREATE DOMAIN IF NOT EXISTS enum as VARCHAR(255);IFEXISTS=TRUE"
你知道如何解决这个问题吗?
【问题讨论】: