Aby dodać do poprzedniej odpowiedzi, obecnie możesz również użyć czegoś takiego, aby sprawdzić kody błędów (na przykład:sprawdzanie zduplikowanych kluczy).
- (lib z github.com/jackc/pgx )
- Błędy Postgresa są wyjaśnione tutaj
import "github.com/jackc/pgx"
...
func isDuplicateKeyError(err error) bool {
pgErr, ok := err.(pgx.PgError)
if ok {
// unique_violation = 23505
return pgErr.Code == "23505"
}
return false
}