使用 NodeJS(JavaScript 和 TypeScript)使用 MS Access (MDB) 文件的 3 种方法
在Node.js中操作MDB文件,可以使用以下三种方法:
- 使用
mdb-parser
库解析MDB文件。 - 使用
adodb
库连接到MDB文件并执行SQL查询。 - 使用
mdb-sql
将MDB文件转换为SQLite数据库,然后使用标准的SQLite库进行操作。
以下是每种方法的示例代码:
- 使用
mdb-parser
库解析MDB文件:
const mdb = require('mdb-parser');
mdb.openMDB('example.mdb', function(err, data) {
if (err) {
console.error(err);
return;
}
console.log(data); // 打印数据库内容
});
- 使用
adodb
库连接到MDB文件并执行SQL查询:
const ADODB = require('adodb');
ADODB.open('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=example.mdb','','', function (err, conn) {
if (err) {
console.error(err);
return;
}
conn.query('SELECT * FROM someTable', function(err, rows) {
if (err) {
console.error(err);
return;
}
console.log(rows); // 打印查询结果
});
conn.close();
});
- 使用
mdb-sql
将MDB文件转换为SQLite数据库,然后使用标准的SQLite库进行操作:
const sqlite3 = require('sqlite3').verbose();
const mdbSql = require('mdb-sql');
mdbSql.toSqlite('example.mdb', 'example.sqlite', function(err) {
if (err) {
console.error(err);
return;
}
let db = new sqlite3.Database('example.sqlite', (err) => {
if (err) {
console.error(err.message);
}
});
db.all('SELECT * FROM someTable', (err, rows) => {
if (err) {
console.error(err.message);
}
console.log(rows); // 打印查询结果
});
db.close((err) => {
if (err) {
console.error(err.message);
}
});
});
注意:由于MS Access数据库文件(MDB)的格式较老并且不是开源的,因此这些库可能不是完全兼容所有MDB文件的功能。使用时请查阅相关库的文档。
评论已关闭