An SQL string builder for pgx.
$ go get github.com/eddiewentw/pgxbuilder
Insert statement:
q := pgxbuilder.Insert("users", []string{"username", "password"}).
Values("triangulum", "6p79P56wNG")
fmt.Println(q.String())
// INSERT INTO users(username, password) VALUES ($1, $2)
fmt.Println(q.Parameters())
// [triangulum 6p79P56wNG]
Select statement:
pgxbuilder.From("users").
Where("username = 'triangulum'").
String()
// SELECT * FROM users WHERE (username = 'triangulum')
Update statement:
pgxbuilder.Update("users").
Set("username = 'mandolin'")
// UPDATE users SET username = 'mandolin'
Delete statement:
pgxbuilder.Delete("users").
Where("username = 'mandolin'")
// DELETE FROM users WHERE (username = 'mandolin')
with pgx:
func addTask(description string) error {
q := Insert("task", []string{"description"}).
Values(description)
_, err := conn.Exec(context.Background(), q.String(), q.Parameters()...)
return err
}