Java 在H2数据库中插入时间-未找到函数“PARSEDATETIME”
我有这张桌子Java 在H2数据库中插入时间-未找到函数“PARSEDATETIME”,java,mysql,sql,h2,Java,Mysql,Sql,H2,我有这张桌子 -- table T_TIME_LAPSE H2 Database Engine CREATE TABLE IF NOT EXISTS t_time_lapse ( id bigint PRIMARY KEY, name varchar(50) NOT NULL, description varchar(200) NOT NULL, sunday boolean DEFAULT NUL
-- table T_TIME_LAPSE H2 Database Engine
CREATE TABLE IF NOT EXISTS t_time_lapse (
id bigint PRIMARY KEY,
name varchar(50) NOT NULL,
description varchar(200) NOT NULL,
sunday boolean DEFAULT NULL,
monday boolean DEFAULT NULL,
tuesday boolean DEFAULT NULL,
wednesday boolean DEFAULT NULL,
thursday boolean DEFAULT NULL,
friday boolean DEFAULT NULL,
saturday boolean DEFAULT NULL,
init_period date NOT NULL ,
end_period date NOT NULL ,
init_time time DEFAULT NULL,
end_time time DEFAULT NULL,
company_id bigint DEFAULT NULL,
);
其中我尝试插入时间类型*日期数据类型的值。格式为yyyy-MM-dd。映射到java.sql.Date,时间设置为00:00:00,如果由于夏令时更改,给定日期和时区不存在午夜,则设置为下一个可能的时间
-- table t_time_lapse
insert into T_TIME_LAPSE (ID, NAME, DESCRIPTION, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY, INIT_PERIOD, END_PERIOD, INIT_TIME, END_TIME, COMPANY_ID)
values (1777,'key', 'key', 1,1,1,1,1,1,1,CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, PARSEDATETIME('12:22','HH:mm'), PARSEDATETIME('16:22','HH:mm'), 1);
但我犯了这个错误
Function "PARSEDATETIME" not found; SQL statement:
您的语法有错误,查询中缺少
PARSEDATETIME('16:22', 'HH:MM'), 1)
//---------------------^-----^
检查语法,它应该是您与H2的约会
因此,您的查询应以如下方式结束:
..., PARSEDATETIME('12:22', 'HH:mm'), PARSEDATETIME('16:22', 'HH:mm'), 1));