Documentation
¶
Index ¶
- Constants
- func GetSqlError(err error) error
- func ManageUpdateError(callerName string, result sql.Result, err error) error
- type Connection
- type DbConfig
- type DbDriver
- type DbPool
- type EnhacedTx
- func (v *EnhacedTx) Commit() error
- func (v *EnhacedTx) Exec(query string, args ...any) (sql.Result, error)
- func (v *EnhacedTx) ForceClose() error
- func (v *EnhacedTx) IsActive() bool
- func (v *EnhacedTx) Query(query string, args ...any) (*sql.Rows, error)
- func (v *EnhacedTx) QueryRow(query string, args ...any) *sql.Row
- func (v *EnhacedTx) Rollback() error
- type Executor
Constants ¶
Variables ¶
This section is empty.
Functions ¶
func GetSqlError ¶
func ManageUpdateError ¶
Manages the possible error coming for an update execution and returns the database error if exists. If not, it checks if any row has been affected and returns err if nothing has been updated.
params 'callerName' is the name of the caller function, it is used in log message 'result' is the sql.Result returned by Exec function 'err' is the error returned by Exec function
Types ¶
type Connection ¶
type DbConfig ¶
type DbConfig struct {
Driver DbDriver
User string
Pass string
Host string
Port int
DBName string
TimeoutSeconds int // connection timeout
MaxOpenConns int
MaxIdleConns int
ConnMaxLifetime time.Duration
}
DbConfig is the generic configuration for all SQL engines.
type DbPool ¶
type DbPool struct {
// contains filtered or unexported fields
}
func CreateDbPool ¶
CreateDbPool creates a connection pool for the given database configuration.
The given database configuration is used to create a connection pool. The connection pool is created with the following settings: - Max open connections: cfg.MaxOpenConns (default: 10) - Max idle connections: cfg.MaxIdleConns (default: 10) - Connection max lifetime: cfg.ConnMaxLifetime (default: 5 minutes) - Connection timeout: cfg.TimeoutSeconds (default: 5 seconds)
The connection pool is created by calling sql.Open() with the database configuration.
If the connection pool cannot be created, an error is returned.
The returned error is of type *errors.CommonsError and contains the error code "ERROR_OPENING_DATABASE" and the error message returned by sql.Open().
func (*DbPool) BeginEnhacedTx ¶
func (*DbPool) GetConnection ¶
type EnhacedTx ¶
type EnhacedTx struct {
// contains filtered or unexported fields
}
func (*EnhacedTx) Exec ¶
Exec executes a query that doesn't return rows. For example: an INSERT and UPDATE.
func (*EnhacedTx) ForceClose ¶
ForceClose closes and aborts the transaction