Источник: Nuances of Programming Не многие команды разработчиков знают о существовании пакета Go, который можно использовать для выполнения SQL-миграций. В файле migration.go имеется следующий код: Пакет, о котором идет речь, называется embed (более подробная информация в документации). Пакет embed появился в Go 1.16. Он предоставляет возможность встраивать файлы и каталоги в бинарные файлы Go. В данном случае пакет embed используется для встраивания файлов миграции SQL в бинарный файл. Директива //go:embed *.sql — это специальный комментарий, который указывает компилятору Go включить все файлы с расширением .sql во встроенную файловую систему. Доступ к встроенным файлам можно получить с помощью типа embed.FS. Переменная FS — это глобальная переменная типа embed.FS, в которой хранится встроенная файловая система. Переменная FS может использоваться для доступа к встроенным файлам во время выполнения программы. Обычно sql-файл создается вместе с пакетом миграций (migrations) в той же
Малоизвестный пакет Go, который пригодится при выполнении SQL-миграций
17 октября 202317 окт 2023
12
2 мин