我在将一个硬编码值插入Advantage 9.1中的“timestamp”字段时遇到了一些麻烦。我想要一个“时间戳”字段,因为我想要一个组合日期+时间字段。我究竟做错了什么?我尝试了下面列出的一些变体,每个变体都会出现错误消息。
create table foo(a timestamp);
insert into foo (a) values ('12/31/2012');
insert into foo (a) values (cast ('12/31/2012' as sql_timestamp));
insert into foo (a) values (cast ('2012-12-31' as sql_timestamp));
insert into foo (a) values (convert('12/31/2012', sql_timestamp));
insert into foo (a) values (convert('2012-12-31', sql_timestamp));
咒语必须简单,我只是没有得到它。
答案 0 :(得分:2)
我相信以下内容可行(包括文字的时间部分并将其指定为零):
insert into foo (a) values ('2012-12-31 00:00:00')
我认为也可以使用旧的样式转义序列和v9.x来创建日期文字常量,然后使用转换标量:
insert into foo (a) values convert( {d '2012-03-04'}, sql_timestamp))