Node.js和MongoDB - 没有插入数据

时间:2012-06-21 17:14:52

标签: node.js mongodb

我试图进行简单的测试 - 使用Node.js将一些数据从SQL Server移动到MongoDB 不确定这段代码有什么问题,但我有三个问题。

1)'为什么这行不止一次打印?'打印机2次打印到控制台           编辑 - 这是因为浏览器的favicon请求(固定)发生的 2)没有数据插入到MongoDB中 3)服务器在一个请求结束时退出 - 没有错误

var http = require('http');
var sql = require('node-sqlserver');
var _ = require('underscore')._;

var connstr = "Driver={SQL Server Native Client 11.0};Server=ProdSqlServer;" + 
              "Database=CDDB;Trusted_Connection={Yes}";

http.createServer(function(req, res) {

    res.writeHead(200, { 'Content-Type': 'application/json' });
    var mongoUrl = "mongodb://localhost:27017/test";
    var stmt = "select top 10000 PersonID as Id, * from People";

    require('mongodb').connect(mongoUrl, function(err, conn){
        sql.query(connstr, stmt, function(err, results) {
            if(err) console.log(err);
            var jsonResults = JSON.stringify(results);
            res.write(jsonResults, 'utf8');

            conn.collection('tracks', function(err, collection) {
                if(err) console.log(err);
                _.each(results, function(x) {
                    collection.insert(x);
                });
            });
            console.log('why does this print more than once?');
            res.end();
        });
    });
}).listen(process.env.PORT || 8080);

0 个答案:

没有答案