2012-04-24 35 views
1

我在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)); 

咒语很简单,我只是没有得到它。

回答

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))