我有这张桌子
pear7 config-set php_suffix -7.0 system
我尝试插入TIME类型的值(*日期数据类型。格式为yyyy-MM-dd.Mapped到java.sql.Date,时间设置为00:00:00(或者如果由于夏令时变化而导致给定日期和时区的午夜不存在,则下一个可能的时间。)
-- 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,
);
但是我收到了这个错误
-- 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);
答案 0 :(得分:3)
您的语法中有错误,但您错过了查询中的''
PARSEDATETIME('16:22', 'HH:MM'), 1)
//---------------------^-----^
使用H2 parsedatetime
检查语法的日期所以你的查询应该像这样结束:
..., PARSEDATETIME('12:22', 'HH:mm'), PARSEDATETIME('16:22', 'HH:mm'), 1));