2017-06-20 4 views
0

以下の表を作成しました。挿入のデフォルト日付は連続変換では変更されません

create table foo 
( 
    ibutton text NULL, 
    severidade int4 NULL, 
    dt_insercao timestamptz NULL DEFAULT now() 
) 

私の挿入:「dt_insersao」の値のいずれかの例については

insert into foo (ibutton, severidade)values ('aa', 4); 

、ウィッヒは、「今」のデフォルトである必要があり、常に2017年6月8日午前10時35分「として起こっています: 35' ...

私はそれがこの値から来てないアイデアを持っていない...

このインサートは私の連続変換に実行されます。

これらの挿入は、パイプライン化されたbの連続変換に実行されます。私のクライアントPGAdminで実行すると、日付は正しいです。

答えて

0

PipelineDBがここに場に出たが、Postgresの中で、now()は、単一のトランザクションでのすべての挿入のために同じ値を返す方法がわからない:

Quote from the manual

これらの機能はの開始時刻を返しますので、それらの値はトランザクション中に変更されません。これは機能と見なされます。つまり、1つのトランザクションに「現在の」時間の一貫した概念を持たせ、同じトランザクション内の複数の変更が同じタイムスタンプを持つようにすることです。

1つのトランザクションに挿入される行ごとに異なる値が必要な場合は、テーブル定義の代わりにclock_timestamp()を使用してください。

+0

そうです、わかりませんでした。ありがとうございました。 –

関連する問題