Дело в том что вы используете асинхронный код с синхронным! То есть запрос в базу данных не успевает выполнится а уже идет респонс! Когда вы что-то делаете в асинхронном коде компилятор не ждет строку пока выполнится, он просто перебегает через неё а потом выполняет то что нужно внутри ..then когда запрос выполнился! В fetch API браузера есть похожая проблема, вы можете использовать async/await чтоб избежать асинхронного кода через .then()!!
Было:
fetch('http://example.com/movies.json')
.then(function(response) {
return response.json();
})
.then(function(myJson) {
console.log(JSON.stringify(myJson));
});
Стало:
let response = await fetch(`https://api.github.com/users/${name}`);
let data = await response.json()
Делайте анологично с вашим кодом!