C какими ORM работал

«C какими ORM работал» — вопрос из категории Базы данных, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Работал с GORM и SQLx.

GORM — популярная ORM с миграциями, связями и поддержкой транзакций.
Пример:

type User struct {
    gorm.Model
    Name  string
    Email string `gorm:"unique"`
}

db.Create(&User{Name: "Alice", Email: "alice@example.com"})

SQLx — обёртка над database/sql с удобным маппингом в структуры.
Пример:

var users []User
err := db.Select(&users, "SELECT * FROM users WHERE name=$1", "Alice")

Предпочитаю SQLx для сложных запросов, а GORM — для быстрой разработки.