postgresql返回错误的日期格式

时间:2016-05-12 15:15:58

标签: postgresql date knex.js

我正在使用带有postgresql db和knex ORM的node.js构建应用程序。我有一个列类型date。我以YYYY-MM-DD(2016/05/12)的格式上传了日期数据。当我在pgAdmin中查看数据时,数据正确显示为2016/05/12。但是,当我检索数据时,它将以以下格式显示:

Wed May 11 2016 20:00:00 GMT-0400 (EDT)

有谁知道为什么会这样?这是我的疑问:

knex('projects').where({
    report_id: req.params.id
}).then(function(data) {
    console.log(data[0].created_at); //returns Wed May 11 2016 20:00:00 GMT-0400 (EDT)
    res.send(data);
}).catch(function(error) {
    console.log('error: ' + error);
    res.sendStatus(500);
});

查询返回:

Wed May 11 2016 20:00:00 GMT-0400 (EDT) - 一天关闭会添加我最初未输入数据库的其他信息。

有谁知道可能会发生什么?

提前致谢!

1 个答案:

答案 0 :(得分:2)

javascript中没有import java.util.Scanner; public class GuessTheLetterGame { public static void main(String[] args) throws java.io.IOException{ Scanner keyboard = new Scanner(System.in); char answer; char guess; boolean right = false; while(!right){ System.out.print("press a key and press ENTER:"); answer= (char) keyboard.next().charAt(0); System.out.print("Have a guess and press ENTER: "); guess= (char) keyboard.next().charAt(0); if (guess == answer){ System.out.println("**Right**"); right = true; } } } } 数据类型。您的date sql数据类型正在被转换为date javascript数据类型,这就是为什么要附加时区信息的原因。

要解决此问题,请尝试调用数据库,将字段返回为datetime,(例如varchar之类的内容,然后javascript会将其视为var data = db.query('select date::varchar from table',conn),从而保持该领域的数据完整性。

相关问题