Middle
Чӣ гуна саволҳои омодашуда (prepared statements)?
sobes.tech AI
Ҷавоб аз AI
Пешгиришшудаи пурсишҳо механизми кор бо базаҳои додаҳо мебошад, ки дар он пурсиши SQL як бор таҳия ва оптимизатсия мешавад, ва сипас бо параметрҳои гуногун чанд маротиба иҷро карда мешавад.
Фоидаҳо:
- Пурзӯрии иҷроиш дар даъватҳои такрорӣ ба ҳамон пурсиш.
- Бехатарӣ — ҳимоя аз вокунишҳои SQL, зеро параметрҳо аз матни пурсиш ҷудо дода мешаванд.
- Ҳамоҳангӣ — параметрҳо автоматӣ ворид мешаванд, бе ниёз ба муҳофизат кардани арзишҳо дастӣ.
Дар Go, пурсиши тайёр бо истифода аз усули Prepare объект *sql.DB ё *sql.Tx сохта мешавад:
stmt, err := db.Prepare("SELECT name FROM users WHERE id = ?")
if err != nil {
log.Fatal(err)
}
defer stmt.Close()
var name string
err = stmt.QueryRow(1).Scan(&name)
if err != nil {
log.Fatal(err)
}
fmt.Println(name)
Ин тариқ, пурсиш як бор таҳия мешавад, ва пас метавон онро чанд маротиба бо параметрҳои гуногун даъват кард.