Данные с базы данных не сохраняются в листе
Нужно сохранять информацию из таблицы SQL базы данных в лист однако почему-то данные не сохраняются, я понимаю что возможно проблема в асинхронности но не знаю как ее решить. Буду очень рад подсказке и/или совету.
const conn = mysql.createConnection({
host: "d26893.mysql.zonevs.eu",
user: "d26893_busstops",
password: "3w7PYquFJhver0!KdOfF",
database: "d26893_busstops"
});
const arr = [];
conn.connect( err => {
if (err) {
console.log(err);
return err;
}
else {
console.log("Database is OK");
}
});
let query = "SELECT * FROM GN_busStops LIMIT 10";
conn.query(query, (err, result, field) => {
arr.push(result);
});
conn.end( err => {
if (err) {
console.log(err);
return err;
}
else {
console.log("Database is Close");
console.log(arr) То есть вот здесь выдается список из 10 объектов
}
});
console.log(arr) А здесь уже пустой лист
Ответ вот такой:
[]
Database is OK
Database is Close
[
[
RowDataPacket {
stop_id: 24417,
stop_code: '7800232-1',
stop_name: 'Keeri',
stop_lat: '58.32272839',
stop_lon: '26.50336311',
zone_id: '24417',
alias: '',
stop_area: 'Nõo vald',
stop_desc: 'Nõgiaru suunas',
lest_x: '6467416.50',
lest_y: '646655.50',
zone_name: '',
authority: 'Tartu MV'
},
RowDataPacket {
stop_id: 24420,
stop_code: '7801039-1',
stop_name: 'Valli',
stop_lat: '58.30022338',
stop_lon: '26.4713277',
zone_id: '24420',
alias: '',
stop_area: 'Nõo vald',
stop_desc: 'Meeri suunas',
lest_x: '6464842.05',
lest_y: '644871.94',
zone_name: '',
authority: 'Tartu MV'
},
RowDataPacket {
stop_id: 9566,
stop_code: '33704-1',
stop_name: 'Kotka',
stop_lat: '59.54100552',
stop_lon: '25.73676559',
zone_id: '9566',
alias: '',
stop_area: 'Kuusalu vald',
stop_desc: '',
lest_x: '6601655.00',
lest_y: '598244.62',
zone_name: 'Harju4',
authority: 'Harjumaa ÜTK'
},
RowDataPacket {
stop_id: 785,
stop_code: '00101-1',
stop_name: 'Kakumäe',
stop_lat: '59.45913844',
stop_lon: '24.5731759',
zone_id: '785',
alias: '',
stop_area: 'Haabersti',
stop_desc: '',
lest_x: '6591401.27',
lest_y: '532504.33',
zone_name: 'Harju1',
authority: 'Tallinna TA'
},
RowDataPacket {
stop_id: 1181,
stop_code: '09704-1',
stop_name: 'Standard',
stop_lat: '59.44800268',
stop_lon: '24.7113414',
zone_id: '1181',
alias: '',
stop_area: 'Põhja-Tallinn',
stop_desc: '',
lest_x: '6590235.78',
lest_y: '540352.48',
zone_name: 'Harju1',
authority: 'Tallinna TA'
},
RowDataPacket {
stop_id: 790,
stop_code: '00106-1',
stop_name: 'Teeotsa',
stop_lat: '59.45375589',
stop_lon: '24.58079798',
zone_id: '790',
alias: '',
stop_area: 'Haabersti',
stop_desc: '',
lest_x: '6590805.37',
lest_y: '532941.76',
zone_name: 'Harju1',
authority: 'Tallinna TA'
},
RowDataPacket {
stop_id: 792,
stop_code: '00108-1',
stop_name: 'Sooranna tee',
stop_lat: '59.45198095',
stop_lon: '24.58396721',
zone_id: '792',
alias: '',
stop_area: 'Haabersti',
stop_desc: '',
lest_x: '6590609.20',
lest_y: '533123.23',
zone_name: 'Harju1',
authority: 'Tallinna TA'
},
RowDataPacket {
stop_id: 134330,
stop_code: '6500907-1',
stop_name: 'Roosimäe',
stop_lat: '58.05830911',
stop_lon: '27.06492176',
zone_id: '134330',
alias: '',
stop_area: 'Põlva vald',
stop_desc: 'Põlva bussijaama suunas',
lest_x: '6439362.30',
lest_y: '680877.90',
zone_name: '',
authority: 'Põlva MV'
},
RowDataPacket {
stop_id: 794,
stop_code: '00124-1',
stop_name: 'Landi',
stop_lat: '59.44870712',
stop_lon: '24.59001154',
zone_id: '794',
alias: '',
stop_area: 'Haabersti',
stop_desc: '',
lest_x: '6590247.49',
lest_y: '533469.27',
zone_name: 'Harju1',
authority: 'Tallinna TA'
},
RowDataPacket {
stop_id: 795,
stop_code: '00110-1',
stop_name: 'Landi',
stop_lat: '59.44885072',
stop_lon: '24.58997753',
zone_id: '795',
alias: '',
stop_area: 'Haabersti',
stop_desc: '',
lest_x: '6590263.47',
lest_y: '533467.20',
zone_name: 'Harju1',
authority: 'Tallinna TA'
}
]
]
Источник: Stack Overflow на русском