2015-08-27 3 views
1

Я прочитал много темы о переполнении стека и оригинальных документах node-mysql, но нигде не описано, как обрабатывать соединения.Узел js mysql end connection

я создать соединение в самом начале моего сценария с .createConnection(params) все работает отлично я делаю последнюю операцию с БД и, естественно, им закрыть его .end() метода проблема начинается здесь

, когда другой пользователь подключается к своему серверу вместо создавая новое соединение, которое я написал в самом начале, как я сказал, - дает мне ошибку Cannot enqueue Query after invoking quit

пункт здесь я не понимаю, что я закончил соединение в предыдущем разделе пользователей end thi sis новый пользователь и скрипт вызывается с самого начала

, почему уже закончившееся соединение не может быть повторно подключено, это ошибка или я что-то не так

ответ

0

Я узнал, что одно и то же соединение не может использоваться дважды, поэтому я просто добавил обратный вызов внутри connection#end(), и если theres no error i set моя переменная связь с null просто что-то вроде этого

var connection =connection?connection:mysql.createConnection(dbParams); 
connection.connect(
function(err){ 
if(err)console.log("cannot connect due to",err); 
else console.log("connected"); 
}) 

//something happens here with db 

connection.end(
function(err){ 
if(!err)connection=null; 
else console.log(err) 
}); 

И теперь все отлично работает

Смежные вопросы