1

Advantage9.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));

呪文は単純でなければなりません、そして私はそれを理解していません。

4

1 に答える 1

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))
于 2012-04-24T12:35:43.763 に答える