Documentation ¶
Index ¶
Constants ¶
View Source
const ContextTransactionKey = "db.transaction"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Database ¶
func NewDatabase ¶
func NewDatabase(c DatabaseConfig) (*Database, error)
func (*Database) GetReadReplicaDb ¶
func (*Database) TxOrDbFromContext ¶
абстракция для tx или db, из контекста если в контексте есть транзакция, то возвращает ее (как интерфейс TxOrDb) если транзакции нет, то возвращает db (как интерфейс TxOrDb)
type DatabaseConfig ¶
type DatabaseConfig struct { Server string `envconfig:"server"` ReadReplicas []string `envconfig:"readreplicas"` User string `envconfig:"user"` Password string `envconfig:"password"` Port int `envconfig:"port"` DatabaseName string `envconfig:"database"` MaxOpenConns int `envconfig:"maxopenconns"` MaxIdleConns int `envconfig:"maxidleconns"` }
type TxOrDb ¶
type TxOrDb interface { sqlx.Execer sqlx.ExecerContext sqlx.Queryer sqlx.QueryerContext sqlx.Preparer sqlx.PreparerContext BindNamed(query string, arg interface{}) (string, []interface{}, error) DriverName() string Get(dest interface{}, query string, args ...interface{}) error MustExec(query string, args ...interface{}) sql.Result NamedExec(query string, arg interface{}) (sql.Result, error) NamedQuery(query string, arg interface{}) (*sqlx.Rows, error) PrepareNamed(query string) (*sqlx.NamedStmt, error) Preparex(query string) (*sqlx.Stmt, error) Rebind(query string) string Select(dest interface{}, query string, args ...interface{}) error GetContext(ctx context.Context, dest interface{}, query string, args ...interface{}) error SelectContext(ctx context.Context, dest interface{}, query string, args ...interface{}) error }
Click to show internal directories.
Click to hide internal directories.