package db import ( "database/sql" "errors" "spend-sparrow/log" "spend-sparrow/types" ) var ( ErrNotFound = errors.New("the value does not exist") ErrAlreadyExists = errors.New("row already exists") ) func TransformAndLogDbError(module string, r sql.Result, err error) error { if err != nil { if errors.Is(err, sql.ErrNoRows) { return ErrNotFound } log.Error("%v: %v", module, err) return types.ErrInternal } if r != nil { rows, err := r.RowsAffected() if err != nil { log.Error("%v: %v", module, err) return types.ErrInternal } if rows == 0 { log.Info("%v: not found", module) return ErrNotFound } } return nil }