Я собираю данные с сайта и сохраняю их в массив. Я хотел бы сохранить этот массив, бросив mysql базу данных.
Я использую nodejs в качестве базового фреймворка, mysql базу данных и typeorm в качестве каркаса базы данных.
Это код с моего express веб-сервера, куда я хочу передать элементы через for-l oop, скинул базу данных:
app.get('/dev', async (req, res) => {
console.log(req.body)
const channelData = await scrape.scrapeChannel()
console.log(channelData.namearray.length);
for (i = 0; i < channelData.namearray.length; i++) {
const creators = await database.insertCreator(channelData.namearray[i], channelData.datearray[i], channelData.imgarray[i])
res.send(creators)
}});
Это мой код для подключения к базе данных:
async function insertCreator(training, date, img) {
const connection = await getConnection();
// create
const creator = new Creator();
creator.img = img;
creator.training = training;
creator.date = date;
// save
const creatorRepo = connection.getRepository(Creator);
const res = await creatorRepo.save(creator);
console.log('saved', res);
// return new list
const allCreators = await creatorRepo.find();
connection.close();
return allCreators;}
Если я запускаю код, я получаю следующее сообщение об ошибке:
AlreadyHasActiveConnectionError: Невозможно создать новое соединение с именем «default», так как соединение с таким именем уже существует и теперь оно имеет активное сеанс соединения.
Кажется, я не закрываю соединение с базой данных. Но я не понимаю, где и почему.
Надеюсь, вы мне поможете.