【发布时间】:2019-12-17 07:56:48
【问题描述】:
是否可以使用 Microsoft Access 数据库 (.accdb) 作为 express js 应用程序的后端?因为我尝试了不同的包来连接它,但不支持。有什么方法可以将 ms access db 与 express rest api 连接起来
【问题讨论】:
标签: node.js rest express ms-access ms-access-2010
是否可以使用 Microsoft Access 数据库 (.accdb) 作为 express js 应用程序的后端?因为我尝试了不同的包来连接它,但不支持。有什么方法可以将 ms access db 与 express rest api 连接起来
【问题讨论】:
标签: node.js rest express ms-access ms-access-2010
你可以使用这个包。 nuintun/node-adodb
使用示例:
'use strict';
const ADODB = require('node-adodb');
const connection = ADODB.open('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=node-adodb.mdb;');
connection
.execute('INSERT INTO Users(UserName, UserSex, UserAge) VALUES ("Newton", "Male", 25)')
.then(data => {
console.log(JSON.stringify(data, null, 2));
})
.catch(error => {
console.error(error);
});
【讨论】:
你可以试试 Node-ADODB 包 https://www.npmjs.com/package/node-adodb
更新
看起来您将在生产环境中的 Windows 环境中托管您的应用程序。您可以尝试使用包https://www.npmjs.com/package/winax提供的“ActiveXObject”
/* Declare Database Setup Options Here
************************************************/
var dbOptions = {
dbPath: "sample-people.accdb",
dbUserID: "",
dbPassword: ""
};
/* MS Access API
************************************************/
var MSAccess = function(dbOptions) {
this.dbOptions = dbOptions;
this.myConn = new ActiveXObject("ADODB.Connection");
this.connStr = "";
this.sessionStr = "";
this.connOption;
var providers = ['Microsoft.ACE.OLEDB.12.0', 'Microsoft.Jet.OLEDB.4.0'],
connError = [];
};
参考:https://rtmccormick.com/2015/11/21/connect-to-ms-access-database-with-javascript-hta-app/
【讨论】: