Jump to content

Работаем с PostgreSQL


tmaslov22

Recommended Posts


Вступление.
Привет работяги! В этой статье я попробую рассказать как быстро начать работать с PostgreSQL . Чем эта СУБД лучше чем MySQL я не буду писать. Если вам интересно, то можно почитать тут :)

Начинаем кодить!
Для начала ставим такую библиотеку: npm install pg-promise (если вы не знаете что это, то почитайте это)
Устанавливаем и запускаем PostgreSQL, если у вас он еще не стоит.

ОК, если все установилось, то создаем папку lib в корне вашего мода.
У меня это получилось так: D:\winsrv\packages\vrp\lib

В папке lib создаем файл db.js
В этом файле мы подключаемся к нашей БД. Тут думаю все понятно по коду.

const pgp = require('pg-promise')();
const cn = {
    host: 'localhost',
    port: 5432,
    database: 'vrp',
    user: 'postgres',
    password: 'postgres'
};
const db = pgp(cn);
module.exports = db;

Теперь в любом файле где нам нужно работать с БД мы просто пишем:
Если у вас ошибка типа db is not defined, то вы забыли написать это!

const db = require('тут пишем путь до файла db.js'); 
// Пример пути: './../lib/db.js' 

Давайте попробуем загрузить данные о пользователе, если он зайдет к нам на сервер.
Не забываем в начале файла common.js прописать: const db = require('./../lib/db.js');
В файле common.js ищем обработчик события playerJoin :

module.exports =
{
	"playerJoin" : player =>
	{
		// сюда добавляем 
        db.any("select * from users where name=$1", [player.name])
            .then(function (data) {
                console.log("data: %j", data); // выводим данные о пользователе
            })
            .catch(function (error) {
                console.log("ERROR:", error.message || error); // выводим ошибку
            });
    }
}


Вот что у нас получится

 

Полезные ссылки:

Edited by tmaslov22
  • Like 3
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...