Advertisement
Guest User

Untitled

a guest
May 16th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "database/sql"
  5. "log"
  6.  
  7. "strconv"
  8.  
  9. "github.com/lib/pq"
  10. )
  11.  
  12. const (
  13. psqlBusinessError = "50001"
  14. psqlBusinessErrorWithLogging = "50002"
  15. psqlVersionControlError = "50003"
  16. )
  17.  
  18. func main() {
  19.  
  20. connStrPostgres := "user=postgres password=password1 dbname=test_wild sslmode=disable host=127.0.0.1"
  21. db, err := sql.Open("postgres", connStrPostgres)
  22. if err != nil {
  23. log.Fatal(err)
  24. }
  25. if err := db.Ping(); err != nil {
  26. log.Fatal(err)
  27. }
  28.  
  29. for i := 1; i <= 3; i++ {
  30. _, err := db.Exec(`SELECT * FROM errortests($1)`, i)
  31. if err != nil {
  32. if err, ok := err.(*pq.Error); ok {
  33. if code, _ := strconv.Atoi(string(err.Code)); code > 50000 {
  34. log.Print(err.Message)
  35. } else {
  36. log.Print("Db error")
  37. }
  38. } else {
  39. log.Print("unknown error")
  40. }
  41. }
  42. }
  43.  
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement