我正在电子应用程序中使用node-adodb。我查询了mdb文件,但是在错误的时区中获取了datetime。如何设置时区或使用错误的方法查询?
我的日期格式在mdb文件中
我正在使用带有电子的node-adodb https://www.npmjs.com/package/node-adodb
我想使用lastupdatetime从mdb文件中检索检查时间和徽章编号,并使用lastupdatetime将其保存在另一个表中。经过努力,我能够从mdb文件中检索日期时间。这是我的代码
var connection = this.adoDb.open('Provider=Microsoft.JET.OLEDB.4.0;Data Source=D:\\SIMS\\bio_att\\att2000.mdb');
let ab = '2019/02/11:11:10:00';
connection
.query("SELECT CHECKINOUT.CHECKTIME,USERINFO.Badgenumber FROM CHECKINOUT INNER JOIN USERINFO ON CHECKINOUT.USERID = USERINFO.USERID WHERE format(CHECKINOUT.CHECKTIME,'yyyy/mm/dd:HH:mm:ss') >= '"+ab+"'")
.then(data => {
console.log(JSON.stringify(data, null, 2));
})
.catch(error => {
console.error(error);
});
当我查询日期时间时,它将返回正确的数据,但时区错误。有什么办法可以获取正确的时区? 返回数据正确 但是时区错了
答案 0 :(得分:0)
我找到了解决方案。我改变了
“ SELECT CHECKINOUT.CHECKTIME”
到
“ SELECT格式(CHECKINOUT.CHECKTIME,'yyyy / mm / dd HH:mm:ss')”
,现在它返回正确时区的日期。 如果有人正在寻找它,希望对我有帮助
let ab = '2019/02/11 11:10:00';
connection
.query("SELECT format(CHECKINOUT.CHECKTIME,'yyyy/mm/dd HH:mm:ss') ,USERINFO.Badgenumber FROM CHECKINOUT INNER JOIN USERINFO ON CHECKINOUT.USERID = USERINFO.USERID WHERE format(CHECKINOUT.CHECKTIME,'yyyy/mm/dd HH:mm:ss') >= '"+ab+"'")
.then(data => {
this.dData = data;
console.log(JSON.stringify(data, null, 2));
this.ldsRllrDisplay = 'none';
})
.catch(error => {
console.error(error);
});