Sobes.tech
Junior — Middle

Разкажете ни за вашия опит с чист SQL без използване на ORM или други абстракции

sobes.tech AI

Отговор от AI

Използването на чист SQL без ORM в Node.js предлага пълен контрол върху заявките и позволява тяхната оптимизация за конкретни задачи. От опита ми, съм писал заявки ръчно, използвайки библиотеки като pg за PostgreSQL или mysql2 за MySQL.

Това е полезно, когато:

  • трябва да напишете сложни заявки с оптимална производителност,
  • да използвате специфични функции на системата за управление на бази данни,
  • да избегнете допълнителните разходи на ORM,
  • бързо да отстранявате грешки и да разбирате точно какво се изпълнява в базата.

Пример за заявка с 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;
}

Този подход изисква внимание при работа с параметри, за да се избегнат SQL инжекции, и добро разбиране на SQL.