Sobes.tech
Back to questions
Junior — Middle
85

Объясните, что такое объект PreparedStatement и для чего он используется в работе с базой данных

Answer from AI

sobes.tech AI

PreparedStatement — это объект, используемый для выполнения параметризованных SQL-запросов к базе данных. В Node.js, при работе с базами через библиотеки (например, mysql2 или pg), подготовленные выражения позволяют:

  • Повысить безопасность, предотвращая SQL-инъекции, так как параметры передаются отдельно от текста запроса.
  • Повысить производительность при повторном выполнении одного и того же запроса с разными параметрами, так как запрос компилируется один раз.

Пример использования с mysql2:

const mysql = require('mysql2/promise');

async function example() {
  const connection = await mysql.createConnection({host: 'localhost', user: 'root', database: 'test'});
  const [rows] = await connection.execute('SELECT * FROM users WHERE id = ?', [userId]);
  console.log(rows);
}

Здесь ? — это параметр, который заменяется значением из массива [userId] безопасным способом.