Documentation
¶
Index ¶
- func CreateTransaction(db *sql.DB, fn TransactionFn) error
- func RunQueriesConcurrently(db *sql.DB, queries ...func(db *sql.DB) error) []error
- func RunQueriesConcurrentlyWithCancel(db *sql.DB, queries ...func(db *sql.DB, ctx context.Context) error) []error
- type Config
- type DefaultHandler
- type DefaultService
- func (d *DefaultService) CreateTransaction(fn TransactionFn) error
- func (d *DefaultService) DB() *sql.DB
- func (d *DefaultService) Exec(query *string, params ...interface{}) (sql.Result, error)
- func (d *DefaultService) Migrate(queries ...string) error
- func (d *DefaultService) QueryRow(query *string, params ...interface{}) *sql.Row
- func (d *DefaultService) ScanRow(row *sql.Row, destinations ...interface{}) error
- type Handler
- type Service
- type TransactionFn
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateTransaction ¶
func CreateTransaction(db *sql.DB, fn TransactionFn) error
CreateTransaction creates a transaction for the database
Parameters:
- db: The database connection
- fn: The function to execute within the transaction
Returns:
- error: An error if the transaction fails
func RunQueriesConcurrently ¶ added in v0.4.8
RunQueriesConcurrently runs multiple queries concurrently
Parameters:
db: The database connection queries: The queries to run
Returns:
[]error: A slice of errors, or nil if no errors occurred
func RunQueriesConcurrentlyWithCancel ¶ added in v0.4.12
func RunQueriesConcurrentlyWithCancel( db *sql.DB, queries ...func(db *sql.DB, ctx context.Context) error, ) []error
RunQueriesConcurrentlyWithCancel runs multiple queries concurrently with a cancel context
Parameters:
db: The database connection queries: The queries to run
Returns:
[]error: A slice of errors, or nil if no errors occurred
Types ¶
type Config ¶ added in v0.4.6
type Config struct {
DriverName string
DataSourceName string
MaxOpenConnections int
MaxIdleConnections int
ConnectionMaxLifetime time.Duration
ConnectionMaxIdleTime time.Duration
}
Config struct
func NewConfig ¶ added in v0.4.6
func NewConfig( driverName, dataSourceName string, maxOpenConnections, maxIdleConnections int, connectionMaxIdleTime, connectionMaxLifetime time.Duration, ) (*Config, error)
NewConfig creates a new configuration for the connection
Parameters:
- driverName: the name of the driver
- dataSourceName: the data source name
- maxOpenConnections: the maximum number of open connections
- maxIdleConnections: the maximum number of idle connections
- connectionMaxIdleTime: the maximum idle time for a connection
- connectionMaxLifetime: the maximum lifetime for a connection
Returns:
- *Config: the connection configuration
- error: if any error occurs
type DefaultHandler ¶ added in v0.7.1
type DefaultHandler struct {
// contains filtered or unexported fields
}
DefaultHandler struct
func NewDefaultHandler ¶ added in v0.7.1
func NewDefaultHandler( config *Config, ) (*DefaultHandler, error)
NewDefaultHandler creates a new connection
Parameters:
- config: the configuration for the connection
Returns:
- *DefaultHandler: the connection handler
func (*DefaultHandler) Connect ¶ added in v0.7.1
func (d *DefaultHandler) Connect() (*sql.DB, error)
Connect returns a new SQL connection
Returns:
- *sql.DB: the SQL connection
- error: if any error occurred
func (*DefaultHandler) DB ¶ added in v0.7.1
func (d *DefaultHandler) DB() (*sql.DB, error)
DB returns the SQL connection
Returns:
- *sql.DB: the SQL connection
- error: if any error occurred
func (*DefaultHandler) Disconnect ¶ added in v0.7.1
func (d *DefaultHandler) Disconnect() error
Disconnect closes the SQL connection
Returns:
- error: if any error occurred
type DefaultService ¶ added in v0.5.0
type DefaultService struct {
// contains filtered or unexported fields
}
DefaultService is the default service struct
func NewDefaultService ¶ added in v0.5.0
func NewDefaultService(db *sql.DB) ( instance *DefaultService, err error, )
NewDefaultService creates a new default service
Parameters:
*db *sql.DB: the database connection
Returns:
*DefaultService: the default service error: if there was an error creating the service
func (*DefaultService) CreateTransaction ¶ added in v0.5.0
func (d *DefaultService) CreateTransaction(fn TransactionFn) error
CreateTransaction creates a transaction for the database
func (*DefaultService) DB ¶ added in v0.5.0
func (d *DefaultService) DB() *sql.DB
DB returns the database
Returns:
*sql.DB: the database
func (*DefaultService) Exec ¶ added in v0.5.0
func (d *DefaultService) Exec(query *string, params ...interface{}) ( sql.Result, error, )
Exec executes a query with parameters and returns the result
func (*DefaultService) Migrate ¶ added in v0.5.0
func (d *DefaultService) Migrate(queries ...string) error
Migrate migrates the database
Parameters:
*queries ...string: the queries to migrate
Returns:
error: if there was an error migrating the database
type Service ¶ added in v0.5.0
type Service interface {
DB() *sql.DB
Migrate(queries ...string) error
CreateTransaction(fn TransactionFn) error
Exec(query *string, params ...interface{}) (sql.Result, error)
QueryRow(query *string, params ...interface{}) *sql.Row
ScanRow(row *sql.Row, destinations ...interface{}) error
}
Service is the interface for the service
type TransactionFn ¶ added in v0.6.1
TransactionFn is the function type for transactions