将 unix 时间戳插入到 postgres 时间戳列 (node-postgres)
Insert unix timestamp to postgres timestamp column (node-postgres)
我正在使用 node-postgres 模块和节点 13.5。我正在尝试向 postgres timestmap 列插入一个 unix 时间戳,它似乎在 dbeaver 中工作但是当我 运行 代码时它不起作用。
CREATE TABLE public.test (
column1 timestamp NULL
);
在 dbeaver 中,当我 运行 我插入:
insert into test (column1 ) values ( )
它打开了一个对话框,我在我的参数中输入:to_timestamp(1) 我点击确定,它毫无问题地插入到我的 table 中。
但是当我使用这段代码时:
pool.query("INSERT INTO test (column1) VALUES ()", ["to_timestamp(1)"]);
我收到一个错误:
error: invalid input syntax for type timestamp: "to_timestamp(1)"
查询方法是模块里的
另外,如果我 运行 喜欢这样:
pool.query("INSERT INTO test (column1) VALUES (to_timestamp(1))", []);
有效。
nodejs 驱动似乎与 dbeaver 驱动做了一些不同的事情。我做错了吗?有没有办法解决这个问题?如果可能的话,我想使用准备好的语句。
我无法改变的事情:
- 我的数据是 unix 时间戳
- 该列必须具有时间戳类型
感谢任何帮助。
我的大学帮助了我:
pool.query("INSERT INTO test (column1) VALUES to_timestamp()", ["1"]);
这是可行的解决方案!
我正在使用 node-postgres 模块和节点 13.5。我正在尝试向 postgres timestmap 列插入一个 unix 时间戳,它似乎在 dbeaver 中工作但是当我 运行 代码时它不起作用。
CREATE TABLE public.test (
column1 timestamp NULL
);
在 dbeaver 中,当我 运行 我插入:
insert into test (column1 ) values ( )
它打开了一个对话框,我在我的参数中输入:to_timestamp(1) 我点击确定,它毫无问题地插入到我的 table 中。
但是当我使用这段代码时:
pool.query("INSERT INTO test (column1) VALUES ()", ["to_timestamp(1)"]);
我收到一个错误:
error: invalid input syntax for type timestamp: "to_timestamp(1)"
查询方法是模块里的
另外,如果我 运行 喜欢这样:
pool.query("INSERT INTO test (column1) VALUES (to_timestamp(1))", []);
有效。
nodejs 驱动似乎与 dbeaver 驱动做了一些不同的事情。我做错了吗?有没有办法解决这个问题?如果可能的话,我想使用准备好的语句。
我无法改变的事情:
- 我的数据是 unix 时间戳
- 该列必须具有时间戳类型
感谢任何帮助。
我的大学帮助了我:
pool.query("INSERT INTO test (column1) VALUES to_timestamp()", ["1"]);
这是可行的解决方案!