web-dev-qa-db-ja.com

JS Date.now()をPostgreSQLに保存する方法は?

PostgreSQL timestampデータ型を使用しようとしましたが、エラーがスローされます

ERROR:  date/time field value out of range: "1489849402536"

スキーマ

create table times (
  time   timestamp    not null,
);

JSコード

`insert into times(time) values (${Date.now()})`

追伸もう1つのオプションはbigintを使用することですが、やり過ぎのようです。

11

to_timestamp() postgres function を使用します。

`insert into times (time) values (to_timestamp(${Date.now()} / 1000.0))`
12
Udi

Sequelizeを使用している場合に備えて、sequelize.literal('CURRENT_TIMESTAMP')を使用できます。例:

await PurchaseModel.update( {purchase_date : sequelize.literal('CURRENT_TIMESTAMP') }, { where: {id: purchaseId} } );
0