Sobes.tech
Junior — Middle

Ispričajte nam o svom iskustvu sa čistim SQL-om bez korišćenja ORM ili drugih apstrakcija

sobes.tech АИ

Одговор од АИ

Korišćenje čistog SQL bez ORM u Node.js pruža potpunu kontrolu nad upitima i omogućava njihovu optimizaciju za specifične zadatke. Iz ličnog iskustva, pisao sam upite ručno koristeći biblioteke poput pg za PostgreSQL ili mysql2 za MySQL.

Ovo je korisno kada:

  • je potrebno napisati složene upite sa optimalnim performansama,
  • koristiti specifične funkcije DBMS-a,
  • izbegavati dodatne troškove ORM-a,
  • brzo debagovati i tačno razumeti šta se tačno izvršava u bazi.

Primer upita sa pg:

const { Client } = require('pg');
const client = new Client({ connectionString: process.env.DATABASE_URL });

async function getUsers() {
  await client.connect();
  const res = await client.query('SELECT id, name FROM users WHERE active = $1', [true]);
  await client.end();
  return res.rows;
}

Ovaj pristup zahteva pažljivo rukovanje parametrima kako bi se izbegle SQL injekcije i dobru razumevanje SQL-a.