Sobes.tech
Junior — Middle

Co oznacza używanie mechanizmów ochrony danych podczas tworzenia zapytań SQL i jakie są ich zalety?

sobes.tech AI

Odpowiedź od AI

Użycie mechanizmów ochrony danych przy tworzeniu zapytań SQL w Go zazwyczaj oznacza stosowanie przygotowanych wyrażeń (prepared statements) i zapytań z parametrami.

Zalety:

  • Ochrona przed wstrzyknięciami SQL: parametry są przekazywane oddzielnie od kodu SQL, co zapobiega wstrzyknięciu złośliwych poleceń.
  • Zwiększenie wydajności: przygotowane zapytania są kompilowane raz i mogą być wielokrotnie wykonywane z różnymi parametrami.
  • Wygoda i czytelność: kod staje się czytelniejszy, łatwiej oddzielić logikę zapytania od danych.

Przykład użycia przygotowanego zapytania w Go:

stmt, err := db.Prepare("SELECT * FROM users WHERE id = ?")
if err != nil {
    // obsługa błędu
}
row := stmt.QueryRow(userID)
// dalsza obsługa wyniku