Node.js · Middle · Pytanie 41 z 75
Dlaczego zapytania SQL muszą używać parametrów zamiast sklejania stringów?
// Źle
db.query("SELECT * FROM users WHERE email = '" + email + "'");
// Dobrze
db.query("SELECT * FROM users WHERE email = $1", [email]);- 1Sklejanie nie działa z PostgreSQL
- 2Parametry zwracają wyniki w kolejności
- ✓Poprawna odpowiedź: Parametry są wysyłane osobno od SQL, więc dane użytkownika nie mogą zmienić zapytania (SQL injection)
Wyjaśnienie
ORM-y i query buildery parametryzują za ciebie, ale surowe zapytania sklejane ze stringów nadal są podatne.