Advertisement
ynifor

Untitled

Nov 14th, 2024
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 0.91 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4.     "database/sql"
  5.     "flag"
  6.     "log"
  7.  
  8.     _ "github.com/lib/pq"
  9. )
  10.  
  11. func main() {
  12.     var name string
  13.     flag.StringVar(&name, "name", "default", "account name")
  14.  
  15.     db, err := sql.Open("postgres", "dataSourceName") // предположим, что параметры берем из конфига, здесь это опущенно. Не считаем за ошибку
  16.     if err != nil {
  17.         db.Close()
  18.         log.Println(err)
  19.         return
  20.     }
  21.  
  22.     tx, err := db.Begin()
  23.     if err != nil {
  24.         log.Println(err)
  25.         return
  26.     }
  27.  
  28.     id, err := CreateAccount(tx, name)
  29.     if err != nil {
  30.         log.Println(err)
  31.         return
  32.     }
  33.  
  34.     if err := NewAccountEvent(id); err != nil {
  35.         log.Println(err)
  36.         return
  37.     }
  38.  
  39.     ids, err := GetAccountIdsByName(tx, name)
  40.     if err != nil {
  41.         log.Println(err)
  42.         return
  43.     }
  44.  
  45.     for _, id := range ids {
  46.         // какие-либо обновления
  47.         _ = id
  48.     }
  49.  
  50.     tx.Commit()
  51.  
  52.     db.Close()
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement