Я реализовал спокойный веб-сервис с express.JS и mssql, я использую утомительно для подключения к базе данных, и я могу успешно, но когда я хочу сравнить rowCount в запросе вставки, я не могу получить истинное значение, и оно return {status: 'Failed', id: '', token: 'это имя пользователя занято ранее'}, в то время как console.log возвращает 1 и вставка выполнена успешно !!! Кто-нибудь может объяснить, что случилось и как я могу это исправить ???
Это мой код
app.get('', (req, res) => {
const query = `BEGIN
IF NOT EXISTS (SELECT * FROM [dbo].[User]
WHERE [userName] = 'MyuserName')
BEGIN
INSERT INTO [dbo].[User]
([userName]
,[nameAndFamily]
,[premissionLevel]
,[createDateTime])
VALUES
('MyuserName'
,'nameAndFamily'
,'premissionLevel'
,'2018-09-05 09:23:10')
END
END`;
sqlconnection.execSql(new Request(query,
function(err, rowCount, rows){
if(err) {
res.end(JSON.stringify({status: 'Failed', id: '', token: err.message}));
}
})
.on('doneInProc',function(rowCount, more, rows){
console.log(rowCount);
if(rowCount === 1){
res.end(JSON.stringify({status: 'Success', id: '', token: ''}));
}else{
res.end(JSON.stringify({status: 'Failed', id: '', token: 'this Username taken before'}));
}
})
);
});