Golang — Squirrel SQL Query Generator

Пример удобной библиотеки для генерации SQL кода в Golang. Нет необходимости писать большие и сложные sprintf и делать экранирование вручную. Просто воспользуемся удобными синтаксисом библиотеки squirrel.

Для начала:

import "github.com/Masterminds/squirrel"

Теперь допустим нам нужно добавить новую запись в нашу postgres табличку.

Для начала важно указать корректный placholder формат, без этого Postgres будет выдавать ошибку на сгенерированный SQL:

psql := sq.StatementBuilder.PlaceholderFormat(sq.Dollar)

Теперь напишем SQL запрос и отправим его на выполнение:

sql, args, _ := psql.
	Insert("reports").
	Columns("column1", "column2", "column3").
	Values(
		"value1",
		"value2",
		"value3").
	ToSql()

_, err := m.db.Exec(sql, args...)
if err != nil {
	return err
}

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *