Существует несколько модулей для работы с MySQL в Node.js. Но самый популярный модуль — это node-mysql. Данный модуль появилось одним из первых, и с его помощью написан довольно много Node.js / MySQL приложений.
Давайте приступим к делу. Чтобы начать использовать MySQL в проекте, сначало нужно установить модуль mysql.
npm install mysql
После успешной установки нам нужно произвести подключение к базе данных.
const mysql = require("mysql"); const connection = mysql.createConnection({ host: "localhost", user: "root", password: "my_password" }); connection.connect();
Это пока еще не все, мы открыли соединение с сервером MySQL и не закрыли. Если мы сейчас запустим даный сценарий, он не завершается сам. Для закрытие соединение у объекта connection есть метод end — connection.end();
Метод принимает callback функцию, и он гарантирует, что все активные запросы успеют завершится до закрытие соединение.
connection.end(function(err){ if(err) return console.log(err); console.log("Disconnect"); });
Метод createConnection может принимать и другие (необязательные) параметры. Вот некоторые из них:
- charset — Это кодировка, по умолчанию стоит UTF8_GENERAL_CI,
- timezone — Временная зона, по умолчанию локальная времия — local,
- flags — Список флагов соединения,
- multipleStatements — По умолчанию отключена для защиты от SQL-инъекций. Разрешает многократное использование SQL-инструкции за один запрос.
А теперь давайте сделаем запрос к базе данных. Для выполнение запросов к базе есть метод query. Он первым параметром принимает SQL запрос, а вторым callback функцию.
connection.query("SELECT * FROM users", function(err, rows, fields){ if(err) return console.log(err); // Действие с результатом });
Метод query нужно вызвать до закрытие соединение.
В следующей статье я более подробно расскажу о запросах к базе MySQL из Node.js, и посмотрим как можно реализовать CRUD операции.
Комментарии