Ошибка типа: пул.промис не является функцией

Я использую библиотеку mysql2 для подключения к базе данных.

const pool = mysql.createPool({
  connectionLimit: process.env.DB_CONNECTION_LIMIT,
  host: process.env.DB_HOST,
  user: process.env.DB_USER,
  password: process.env.DB_PASSWORD,
  database: process.env.DB_DATABASE,
  port: process.env.DB_PORT,
});

const promisePool = pool.promise();

при запуске приведенного выше кода я получаю TypeError:pool.promise не является функцией, хотя эта функция упоминается в документации: https://sidorares.github.io/node-mysql2/docs

Кроме того, я хочу понять необходимость/определение этой функции, поскольку я все еще могу выполнять запросы, даже если удалю эту строку. const promisePool = pool.promise();

    // working fine
    const [results, fields] = await pool.execute(query, [parameter1]);

Можете ли вы показать свой оператор импорта для библиотеки mysql2? Я думаю, вы используете «mysql2» вместо «mysql2/promise».

Waleed 09.06.2024 22:24

@Waleed импортирует MySQL из «mysql2/promise»; "mysql2": "^3.10.0",

Rajat Aggarwal 10.06.2024 16:58
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
2
73
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам не нужно использовать функцию «.promise()». Он предоставляется только для «обновления» существующего необещанного соединения для использования обещания». согласно документации . MySQL2 уже использует обещания по умолчанию. Обратитесь к примерам, найденным здесь, чтобы узнать, как лучше всего начать работу с MySQL2 и Typescript.

Другие вопросы по теме

Похожие вопросы

Медленный запрос MySQL с несколькими подзапросами в предложенииwhere
Поле слишком мало, чтобы принять тот объем данных, который вы пытались добавить. Попробуйте вставить или вставить меньше данных
Присоединитесь к 3 таблицам, чтобы вернуть все несовпадающие столбцы во второй и третьей таблице (с некоторыми условиями)
MySQL внутри Docker Compose в кодовом пространстве GitHub 16 ГБ оперативной памяти сталкивается с проблемами
SQL-запрос для обновления значения поля JSON в MySQL
Как я могу выбрать, какая строка выбрана при использовании OR в Mysql
Запрос, возвращающий строку, даже если оператор SELECT пуст, ошибочен
Как отредактировать значение из связанной таблицы в раскрывающемся списке (<select>)?
Оптимизация запросов MySQL (5.7.26), почему select * выполняется намного быстрее, чем select id в моем ведущем запросе с подстановочными знаками?
В чем разница между этими двумя запросами?