通过nodejs访问.mdb文件

问题描述 投票:0回答:4

我想访问.mdb文件并使用nodejs进行插入/更新等操作

请推荐一个适合需要的库。

谢谢。

node.js ms-access-2007 npm
4个回答
30
投票

略有不同,但 node-adodb 对于我的 .accdb 文件效果很好:

https://www.npmjs.org/package/node-adodb

// Get the adodb module
var ADODB = require('node-adodb');
ADODB.debug = true;

// Connect to the MS Access DB
var connection = ADODB.open('Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\dbs\\my-access-db.accdb;Persist Security Info=False;');

// Query the DB
connection
    .query('SELECT * FROM [TestTable];')
    .on('done', function (data){
        console.log('Result:'.green.bold, data);
    })

8
投票

本文介绍了将 PHP 连接到 Access .mdb 数据库的过程: http://www.sitepoint.com/using-an-access-database-with-php/

Node.js 的过程非常相似 - 它只是另一个 ODBC 数据源。

您需要一个节点 ODBC 包,例如: https://github.com/wankdanker/node-odbc

https://github.com/markdirish/node-odbc/

然后您需要格式化 ODBC 连接字符串。例如。

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=MyDatabase; Uid=; Pwd=;"

4
投票

我的建议是 OWIN 模块,目前由 Tomasz Janczuk 先生开发为 Edge.js


0
投票

我也遇到了同样的问题,下面的代码能够解决我的问题

const path = require('path');
const ADODB = require('node-adodb');


const connectionString = path.resolve(__dirname, './test1.mdb');
const connection = ADODB.open(`Provider=Microsoft.Jet.OLEDB.4.0;Data Source=${connectionString};`);

connection.query("SELECT * FROM users").then((data) => {
    console.log(data);
}).catch(err => {
    console.error(JSON.stringify(err))
});

© www.soinside.com 2019 - 2024. All rights reserved.