Documentation ¶
Index ¶
- func Free()
- func NewLoggerGorm(parent *impl) gormLogger.Interface
- type Err
- type Error
- func (e *Error) ApplyMigration(code uint, err error) Err
- func (e *Error) ConfigurationIsEmpty(code uint) Err
- func (e *Error) ConnectError(code uint, err error) Err
- func (e *Error) DriverUnImplemented(code uint, driver string) Err
- func (e *Error) UnknownDatabaseDriver(code uint, driver string) Err
- func (e *Error) UnknownDialect(code uint, dialect string, err error) Err
- func (e *Error) UsernameIsEmpty(code uint) Err
- func (e *Error) WrongConnectionType(code uint, connType string) Err
- type Implementation
- type Interface
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Free ¶
func Free()
Free Освобождает соединение работы с базой данных. Объект работы с базой данных полностью удаляется из памяти.
func NewLoggerGorm ¶
func NewLoggerGorm(parent *impl) gormLogger.Interface
NewLoggerGorm Создание объекта с интерфейсом gorm.logger.Interface.
Types ¶
type Err ¶
type Err interface { Anchor() error // Якорь, по которому можно сравнивать две ошибки между собой. Code() uint // Код ошибки. Error() string // Сообщение об ошибке или шаблон сообщения об ошибке. }
Err Интерфейс ошибки приложения.
type Error ¶
type Error struct{}
Error Объект-одиночка со списком ошибок которые можно сравнивать по якорю через '=='.
func (*Error) ApplyMigration ¶
ApplyMigration Применение новых миграций базы данных прервано ошибкой: ...
func (*Error) ConfigurationIsEmpty ¶
ConfigurationIsEmpty Конфигурация подключения к базе данных пустая.
func (*Error) ConnectError ¶
ConnectError Подключение к базе данных завершилось ошибкой: ...
func (*Error) DriverUnImplemented ¶
DriverUnImplemented Подключение к базе данных с помощью драйвера ... не создано.
func (*Error) UnknownDatabaseDriver ¶
UnknownDatabaseDriver Указан неизвестный или не поддерживаемый драйвер базы данных: ...
func (*Error) UnknownDialect ¶
UnknownDialect Применение миграций базы данных, настройка диалекта ... прервано ошибкой: ...
func (*Error) UsernameIsEmpty ¶
UsernameIsEmpty Не указано имя пользователя, для подключения к базе данных.
type Implementation ¶
type Implementation struct {
// contains filtered or unexported fields
}
Implementation Встраиваемая структура в модель базы данных, для лёгкого подключения "по требованию" к базе данных.
func (*Implementation) Gist ¶
func (db *Implementation) Gist() Interface
Gist Возвращается настроенный и готовый к работе интерфейс подключения к базе данных.
func (*Implementation) Gorm ¶
func (db *Implementation) Gorm(opts ...*Option) (ret *gorm.DB)
Gorm Возвращается настроенный и готовый к работе объект ORM gorm.io/gorm.
func (*Implementation) OptionSilent ¶
func (db *Implementation) OptionSilent() *Option
OptionSilent Полное отключение логирования запросов к базе данных.
func (*Implementation) Sqlx ¶
func (db *Implementation) Sqlx() *sqlx.DB
Sqlx Настроенный и готовый к работе объект обёртки над соединением с БД github.com/jmoiron/sqlx.
type Interface ¶
type Interface interface { // Close Закрытие соединения с базой данных. Close() (err error) // E Ошибка соединения с базой данных. // Если err==nil - база данных доступна, соединение активно, ошибок нет. // Если err!=nil - есть проблема с соединением с базой данных. E() (err error) // Status Возвращает состояние подключения к базе данных. Status() (ret *sql.DBStats) // SqlDB Настроенный и готовый к работе бассейн соединений database/sql. // Если возвращается nil - есть ошибки, ошибка доступна в функции E() SqlDB() (ret *sql.DB) // GormDB Настроенный и готовый к работе объект ORM gorm.io/gorm. // Если возвращается nil - есть ошибки, ошибка доступна в функции E() GormDB() (ret *gorm.DB) // SqlxDB Настроенный и готовый к работе объект обёртки над соединением с БД github.com/jmoiron/sqlx. // Если возвращается nil - есть ошибки, ошибка доступна в функции E() SqlxDB() (ret *sqlx.DB) // MigrationUp Применение миграций базы данных. MigrationUp() (err error) // Errors Справочник всех ошибок пакета. Errors() *Error }
Interface Интерфейс пакета.
func Get ¶
func Get() Interface
Get Возвращается интерфейс для работы с базой данных. Если база данных доступна, тогда возвращается полностью настроенное и готовое к работе соединение с базой данных. Если база данных не доступна, тогда возвращается объект, методы которого заблокированы до момента установки соединения с базой данных. Параллельно запущен процесс подключения к базе данных, по окончании которого, блокировка методов объекта снимается.