如何在时间戳字段中插入硬编码的值
问题描述:
我在Advantage 9.1中的“时间戳”字段中插入硬编码值时遇到了一些问题。我想要一个“时间戳”字段,因为我想要一个组合的日期+时间字段。我究竟做错了什么?我已经尝试了下面列出的许多变体,每个都会失败并显示错误消息。如何在时间戳字段中插入硬编码的值
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));
咒语很简单,我只是没有得到它。
答
我相信下面的工作(包括文字的时间部分并将其指定为零点):
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))