Мануал Урок Подключаем и работаем с MySQL на сервере Rage MP

nettkom

Активный участник
Автор темы
14 Сен 2020
57
20
27
Рано или поздно нам понадобится сохранять данные с каком-то постоянном хранилище, чтобы они были доступны даже после перезапуска сервера. Часто люди записывают нужные данные в простые текстовые файлы. Но если данных много, они разнообразные и их формат может меняться, то удобнее хранить их в базе данных.



Одной из самых популярных систем управления базами данных является MySQL. В этом уроке мы разберемся как мы можем работать с базой данных MySQL на сервере Rage MP.

Тестировать мы будет на своем компьютере и нам понадобится установить сервер MySQL и node js.
Я использую mysql сервер в комплекте программы Open Server. В этой же программе есть клиент phpMyAdmin с помощью которого можно работать с базой данных в браузере.

1604764645449.jpg


Node js мы скачаем и установим с официального сайта (LTS версия). При установке можно ничего не менять и оставлять все как есть по-умолчанию.
Для теста я создал базу данных rage-test и в ней простенькую таблицу accounts

1604764721613.jpg



Node js мы скачаем и установим с официального сайта (LTS версия). При установке можно ничего не менять и оставлять все как есть по-умолчанию.

Для теста я создал базу данных rage-test и в ней простенькую таблицу accounts
Код:
npm install mysql
1604765056625.jpg


После установки пакета mysql мы можем использовать его в своих скриптах! Ниже приведу пример подключения к базе данных

Код:
var mysql = require('mysql'); // подключаем библиотеку к скрипту

var connection = mysql.createConnection({ // настройки подключения к базе данных
    host     : 'localhost',
    user     : 'mysql',
    password : 'mysql',
    database : 'rage-test'
});

connection.connect(function(err) { // подключаемся
    if (err) { // в случае ошибки в err будет объект ошибки
        console.error('Ошибка подключения: ' + err.stack);
        return;
    }

    console.log('Успешное подключение к базе данных ');
});

Если мы смогли успешно подключиться к базе данных, то теперь можем выполнить наш первый запрос

Код:
connection.query('SELECT * FROM accounts', function (error, results) {
    console.log(results);
});

1604765371003.jpg

Если нам нужно подставить в запрос какое-то значение (например, логин который ввел пользователь), то подставляем их сразу с экранирование таким способом:



Код:
connection.query('SELECT * FROM accounts WHERE login = ? AND password = ?', ['Иванов Иван', '47t6437t8ygoeruygo'], function (error, results) {
    console.log(results);
});

В самом запросе в местах где будут подставляться значения мы ставим вопросительный знак, а сами значение передаем в массиве во втором аргументе функции query (в том же порядке, что и вопросительные знаки). Это гораздо безопаснее чем подставлять данные напрямую в запрос.


Также добавим к примеру еще одну запись в таблицу accounts

Код:
connection.query('INSERT INTO accounts SET login = ?, password = ?', ['Mark', '8888']);

1604765940336.jpg



По сути этого достаточно чтобы начать полноценно работать с mysql. Понятное дело нужно знать основы языка запросов SQL. Там еще много интересных возможностей.

Полезные ссылки:
Документация по модулю mysql (ENG)
Сайт Open Server
Сайт node js
avtor - Lev Angel
 

Вложения

  • 1604765056625.jpg
    1604765056625.jpg
    81.3 KB · Просмотры: 52
Последнее редактирование:

hellcat

Участник портала
20 Сен 2020
55
10
20
Так и будешь все копировать с соседнего борда?
 
  • Like
Реакции: nettkom

nettkom

Активный участник
Автор темы
14 Сен 2020
57
20
27
да так и буду капипиздить ))) хочу объединить все уроки и статьи для новичков