Sobes.tech
Junior — Middle

Opowiedz o swoim doświadczeniu z czystym SQL bez użycia ORM lub innych abstrakcji

sobes.tech AI

Odpowiedź od AI

Używanie czystego SQL bez ORM w Node.js daje pełną kontrolę nad zapytaniami i pozwala je optymalizować pod konkretne zadania. Z mojego doświadczenia, pisałem zapytania ręcznie, korzystając z bibliotek takich jak pg dla PostgreSQL lub mysql2 dla MySQL.

To jest przydatne, gdy:

  • trzeba napisać skomplikowane zapytania z optymalną wydajnością,
  • korzystać z funkcji specyficznych dla systemu zarządzania bazą danych,
  • unikać narzutów ORM,
  • szybko debugować i rozumieć, co dokładnie jest wykonywane w bazie.

Przykład zapytania z użyciem 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;
}

Takie podejście wymaga ostrożności przy pracy z parametrami, aby uniknąć SQL injection, oraz dobrej znajomości SQL.