Назад к вопросам
Junior — Middle
80
Какие инструменты или библиотеки применяли для реализации взаимодействия с базой данных в своих проектах?
Ответ от нейросети
sobes.tech AI
В проектах на Go для взаимодействия с базами данных часто используют стандартный пакет database/sql, который предоставляет общий интерфейс для работы с разными СУБД. Для конкретных драйверов применяют, например, github.com/lib/pq для PostgreSQL или github.com/go-sql-driver/mysql для MySQL.
Кроме того, популярны ORM-библиотеки и инструменты для упрощения работы с БД:
- GORM — мощный ORM с поддержкой миграций, связей и удобным API.
- sqlx — расширение
database/sqlс удобными методами для сканирования и работы с запросами.
Пример использования database/sql с PostgreSQL:
import (
"database/sql"
_ "github.com/lib/pq"
)
func main() {
db, err := sql.Open("postgres", "user=postgres dbname=mydb sslmode=disable")
if err != nil {
panic(err)
}
defer db.Close()
var name string
err = db.QueryRow("SELECT name FROM users WHERE id=$1", 1).Scan(&name)
if err != nil {
panic(err)
}
fmt.Println("User name:", name)
}