web-dev-qa-db-ja.com

タイムゾーンNOT NULLのないデータ型タイムスタンプのpostgresにステートメントを挿入します。

データベースnoobアラート:postgresテーブルに挿入しようとしています。挿入するフィールドはmake_dateと呼ばれます。

フィールドタイプはtimestamp without time zone NOT NULLです。そこに今日の日付を挿入するにはどうすればよいですか?今の日付と時刻が好きですか?以下のようなものですが、dateTime.nowの正しいデータ型挿入形式を取得できません

insert into inventory_tbl (make_date) values (dateTime.now)
19
Doublespeed

C. Ramseyerのソリューション(正しい)に加えて、make_dateを常に(または通常でも)レコードが作成された日付にしたい場合、デフォルトをnow()に設定できます。

alter table inventory_tbl alter make_date set default now();

次に、挿入の列のリストにそれを含めない場合、自動的にnow()に設定されます。

test=> insert into inventory_tbl ( name ) values ('brick'), ('sand'), ('obsidian') returning *;
         make_date          |   name   
----------------------------+----------
 2013-03-21 09:10:59.897666 | brick
 2013-03-21 09:10:59.897666 | sand
 2013-03-21 09:10:59.897666 | obsidian
(3 rows)

INSERT 0 3
20
Michael Granger

now()またはCURRENT_TIMESTAMPを使用します。

22
C. Ramseyer