Sobes.tech
Junior — Middle

Povedzte nám o vašich skúsenostiach s čistým SQL bez použitia ORM alebo iných abstrakcií

sobes.tech AI

Odpoveď od AI

Použitie čistého SQL bez ORM v Node.js ponúka úplnú kontrolu nad dotazmi a umožňuje ich optimalizovať pre špecifické úlohy. Z mojich skúseností som písal dotazy ručne s použitím knižníc ako pg pre PostgreSQL alebo mysql2 pre MySQL.

To je užitočné, keď:

  • je potrebné napísať zložité dotazy s optimálnym výkonom,
  • používať špecifické funkcie systému správy databáz,
  • vyhnúť sa dodatočným nákladom ORM,
  • rýchlo odstraňovať chyby a presne pochopiť, čo sa v databáze vykonáva.

Príklad dotazu s 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;
}

Tento prístup vyžaduje opatrnosť pri práci s parametrami, aby sa predišlo SQL injekciám, a dobré pochopenie SQL.