Сегодня хочу рассказать о небольшом опыте работы с MySQL (хотя тут можно использовать и любую другую БД) в Go.
Я нашел для себя отличный способ работать с БД из Go и спешу им поделиться.
Вообще в Go есть несколько важных вещей для того, чтобы делать запросы. Например database/sql
и github.com/go-sql-driver/mysql.
А для того, чтобы мапить результат запроса в структуру — будем использовать github.com/jmoiron/sqlx
sqlx — это набор экстеншнов поверх database/sql
которые позволяют сделать минимальную “орм” в Go.
У sqlx есть куча методов, которые начинаются с Must. MustExec, MustBegin. Использовать нужно их с осторожностью, потому как они кидают панику и ваше приложение может крашить, когда вы не хотите этого ?