Felhasználói eszközök

Eszközök a webhelyen


oktatas:web:nodejs:mariadb

Ez a dokumentum egy előző változata!


< Node.js

Mariadb

Kapcsolódás Mariadb szerverhez

Legyen egy adatbázis:

create database iroda;
 
use iroda;
 
create table utazok(
  az int not null primary key auto_increment,
  nev varchar(50),
  telepules varchar(50)
);
 
grant all privileges
on iroda.*
to iroda@localhost
identified by 'titok';

Az utazok nevű tábla:

desc utazok;
+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| az        | int(11)     | NO   | PRI | NULL    | auto_increment |
| nev       | varchar(50) | YES  |     | NULL    |                |
| telepules | varchar(50) | YES  |     | NULL    |                |
+-----------+-------------+------+-----+---------+----------------+

Ha szeretnénk felvenni egy utazót:

insert into utazok
(nev, telepules)
values
('Páros Irén', 'Szeged');

Feladatunk: elérni az adatbázist, lekérdezni és beszúrni adatokat.

Lekérdezés

kap.js
const mariadb = require('mariadb/callback');
const conn = mariadb.createConnection({
	host: 'localhost', 
	database: 'iroda',
	user: 'iroda', 
	password: 'titok'
});
 
conn.query("select * from utazok", (err, rows) => {
	console.log(rows);
	conn.end();
});

Beszúrás

beszur.js
const mariadb = require('mariadb/callback');
const conn = mariadb.createConnection({
	host: 'localhost', 
	database: 'iroda',
	user: 'iroda', 
	password: 'titok'
});
 
conn.query("insert into utazok (nev, telepules) values (?, ?)", 
    ["Pataki Sándor", "Szolnok"], 
    (err, res) => {
        console.log(res);
        conn.end();
});

Pool használata

Ha pool-t használunk egy kapcsolatkészletünk lesz, mielőtt megszakad a kapcsolat. Ebben a példában 5 darab kapcsolatot állítunk be. Nagyobb projekteknél ajánlott a használata.

pool.js
const mariadb = require('mariadb')
const pool = mariadb.createPool({
  host: 'localhost',
  user: 'iroda',
  password: 'titok',
  database: 'iroda',
  connectionLimit: 5
})
 
pool.getConnection()
  .then(conn => {
    conn.query('SELECT * FROM utazok')
      .then(rows => {
        console.log(rows)
        conn.end()
      })
      .catch(err => {
        console.log(err)
        conn.end()
      })
  })
  .catch(err => {
    console.log(err)
  })
oktatas/web/nodejs/mariadb.1753864231.txt.gz · Utolsó módosítás: 2025/07/30 10:30 szerkesztette: admin