从Node Js

时间:2016-04-26 11:22:23

标签: javascript node.js ms-access access

我需要在Node JS的MS Access中列出数据库中的表名。我尝试使用

var ADODB = require('node-adodb');
ADODB.debug = true;

// Connect to the MS Access DB
var connection = ADODB.open('Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:\\Users\\Omar\\Documents\\1.accdb;Persist Security Info=False;');

router.get('/',function (peticion,respuesta){
console.log("estamos en el get");

connection
    .query('SELECT [NAME] from MSysObjects WHERE Type In (1,4,6) and Left ([Name],4) <> "MSys"')

    .on('done', function (data){
        //console.log('Result:'.green, data);

        for (var x = 0; x < data.records.length;x ++){
          console.log(data.records[x]);
        }
        console.log(data.records);
        respuesta.render('index.jade', {peliculas: data.records});
    });

});

但是给我错误“如果对象关闭则不允许操作”,我无法修复它。

谢谢,抱歉我的英语不好

1 个答案:

答案 0 :(得分:2)

我有同样的问题^^ 如果您使用的是node-adodb的最新版本,则只需注释这些行以显示真实的错误消息:

node-adodb/lib/adodb.js:496 -> //recordset.Close();
node-adodb/lib/adodb.js:497 -> //connection.Close();

我是服务器版本问题!

如果您需要更多信息,可以在此处查看问题: https://github.com/nuintun/node-adodb/issues/9

希望有所帮助:)