Junior — Middle
Meséljen a tiszta SQL használatáról ORM vagy más absztrakciók nélkül
sobes.tech MI
Válasz az MI-től
A tiszta SQL ORM nélkül Node.js-ben teljes kontrollt ad a lekérdezések felett, és lehetővé teszi azok optimalizálását konkrét feladatokra. Tapasztalatom szerint kézzel írtam lekérdezéseket, olyan könyvtárakat használva, mint a pg PostgreSQL-hez vagy a mysql2 MySQL-hez.
Ez akkor hasznos, amikor:
- összetett lekérdezéseket kell írni optimális teljesítménnyel,
- speciális adatbázis-függő funkciókat akarunk használni,
- el akarjuk kerülni az ORM által okozott többletköltségeket,
- gyors hibakeresést és pontos megértést szeretnénk arról, hogy pontosan mi történik az adatbázisban.
A pg példája:
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;
}
Ez a megközelítés óvatosságot igényel a paraméterek kezelésében, hogy elkerüljük az SQL injection-t, és jó SQL-ismereteket.