如何设置 Node-adodb 时区以在正确的时区中检索日期时间
How to set Node-adodb timezone to retrieve datetime in correct time zone
我在我的电子应用程序中使用 node-adodb。我查询 mdb 文件,但我在错误的时区获取日期时间。我如何设置时区或使用错误的方法进行查询。
我在 mdb 文件中的日期格式
- 用户 ID 检查时间
- 421 2/11/2019 11:54:19 上午
- 433 2019 年 2 月 11 日 11:54:18 上午
- 431 2019 年 2 月 11 日 11:54:17 上午
我正在使用 node-adodb 和 electron
https://www.npmjs.com/package/node-adodb
我想使用 lastupdatetime 从 mdb 文件中检索 checktime 和 badgenumber,并将其保存在另一个 table 中,并使用 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);
});
当我查询日期时间时,它 return 的数据正确但时区错误。有没有办法获得正确的时区?
return数据正确
但时区错误
我找到了解决办法。我改变了
"SELECT CHECKINOUT.CHECKTIME"
到
"SELECT format(CHECKINOUT.CHECKTIME,'yyyy/mm/dd HH:mm:ss')"
现在 returns 日期在正确的时区。
如果有人正在寻找它,我希望它能有所帮助
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);
});
我在我的电子应用程序中使用 node-adodb。我查询 mdb 文件,但我在错误的时区获取日期时间。我如何设置时区或使用错误的方法进行查询。
我在 mdb 文件中的日期格式
- 用户 ID 检查时间
- 421 2/11/2019 11:54:19 上午
- 433 2019 年 2 月 11 日 11:54:18 上午
- 431 2019 年 2 月 11 日 11:54:17 上午
我正在使用 node-adodb 和 electron https://www.npmjs.com/package/node-adodb
我想使用 lastupdatetime 从 mdb 文件中检索 checktime 和 badgenumber,并将其保存在另一个 table 中,并使用 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);
});
当我查询日期时间时,它 return 的数据正确但时区错误。有没有办法获得正确的时区? return数据正确 但时区错误
我找到了解决办法。我改变了
"SELECT CHECKINOUT.CHECKTIME"
到
"SELECT format(CHECKINOUT.CHECKTIME,'yyyy/mm/dd HH:mm:ss')"
现在 returns 日期在正确的时区。 如果有人正在寻找它,我希望它能有所帮助
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);
});