Sobes.tech
Senior
67

SQL sorgularında ($1, $2) yer tutucuları neden kullanılır?

Sorulan şirketler
СБК ПАРУС

AI'dan gelen yanıt

sobes.tech yapay zeka

Placeholder-ы типа $1, $2 в SQL-запросах используются для параметризации запросов. Это позволяет:

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

Пример использования в C++ с библиотекой libpq (PostgreSQL):

const char* query = "SELECT * FROM users WHERE id = $1 AND status = $2";
int userId = 42;
const char* status = "active";

// Подготовка и выполнение запроса с параметрами userId и status
// Параметры передаются отдельно, а не вставляются в строку напрямую

Таким образом, placeholder-ы обеспечивают безопасность и эффективность работы с базой данных.