My code is
var thdb = require('./module/thdb.js');
var csv = require('./module/readcsv.js');
var db = new thdb.database('root','root','localhost','TH_DB');
var CSVdata= new Array();
var csv_row=0;
csv.readFile('data.txt',",",true,function(data){
CSVdata[csv_row]=data;
csv_row++;
},function(count){
for(var k=0;k<CSVdata.length;k++)
{
var data=CSVdata[k];
(function(){
var data_copy=data;
db.checkSymbol(data_copy.Symbol,function(exist){
if(exist)
{
//write log
console.log('Nost Inserting: '+data_copy.Symbol);
}
else {
//write log
var data_copy2=data_copy;
var db_copy=db;
console.log('Inserting: '+data_copy2.Symbol);
//insert
var DataObj = {
Exchange_id:1,
Currency_id:1,
symbol: data_copy2.Symbol,
name:data_copy2.Name
};
db_copy.insertSecurity(DataObj);
}//close exist else
});//close check db
})();
}
db.close();
});
I got a error
Not Inserting: E
Not Inserting: X
Not Inserting: Z
Error: No database selected
at Function._packetToUserObject (/Users/saturngod/Dropbox/th/node_modules/mysql/lib/client.js:384:7)
at Query._handlePacket (/Users/saturngod/Dropbox/th/node_modules/mysql/lib/query.js:33:33)
at Client._handlePacket (/Users/saturngod/Dropbox/th/node_modules/mysql/lib/client.js:309:14)
at Parser.<anonymous> (native)
at Parser.emit (events.js:64:17)
at /Users/saturngod/Dropbox/th/node_modules/mysql/lib/parser.js:71:14
at Parser.write (/Users/saturngod/Dropbox/th/node_modules/mysql/lib/parser.js:576:7)
at Socket.<anonymous> (native)
at Socket.emit (events.js:64:17)
at Socket._onReadable (net.js:678:14)
If I don't close the database connection ,it's working fine. However , I close the database connection at the end of the loop, I always got a error.