Versions in this module Expand all Collapse all v1 v1.4.0 Jul 20, 2025 Changes in this version + const Binding + const Name + var App foundation.Application + var ConfigNotFound = errors.New("not found database configuration") + var FailedToGenerateDSN = errors.New("failed to generate DSN, please check the database configuration") + func Open(dsn string) gorm.Dialector + func OpenDB(db gorm.ConnPool) gorm.Dialector + type Config struct + func NewConfig(config config.Config, connection string) *Config + func (r *Config) Config() config.Config + func (r *Config) Connection() string + func (r *Config) Readers() []contracts.FullConfig + func (r *Config) Writers() []contracts.FullConfig + type Dialector struct + Conn gorm.ConnPool + DSN string + func (dialectopr Dialector) RollbackTo(tx *gorm.DB, name string) error + func (dialectopr Dialector) SavePoint(tx *gorm.DB, name string) error + func (dialector Dialector) BindVarTo(writer clause.Writer, stmt *gorm.Statement, v interface{}) + func (dialector Dialector) ClauseBuilders() map[string]clause.ClauseBuilder + func (dialector Dialector) DataTypeOf(field *schema.Field) string + func (dialector Dialector) DefaultValueOf(field *schema.Field) clause.Expression + func (dialector Dialector) Explain(sql string, vars ...interface{}) string + func (dialector Dialector) Initialize(db *gorm.DB) (err error) + func (dialector Dialector) Migrator(db *gorm.DB) gorm.Migrator + func (dialector Dialector) Name() string + func (dialector Dialector) QuoteTo(writer clause.Writer, str string) + type Docker struct + func NewDocker(database string) *Docker + func (r *Docker) Build() error + func (r *Docker) Config() docker.DatabaseConfig + func (r *Docker) Database(name string) (docker.DatabaseDriver, error) + func (r *Docker) Driver() string + func (r *Docker) Fresh() error + func (r *Docker) Image(image docker.Image) + func (r *Docker) Ready() error + func (r *Docker) Reuse(containerID string, port int) error + func (r *Docker) Shutdown() error + type Grammar struct + func NewGrammar(log log.Log, prefix string) *Grammar + func (r *Grammar) CompileAdd(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileChange(blueprint driver.Blueprint, command *driver.Command) []string + func (r *Grammar) CompileColumns(_, table string) (string, error) + func (r *Grammar) CompileComment(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileCreate(blueprint driver.Blueprint) string + func (r *Grammar) CompileDefault(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileDisableWriteableSchema() string + func (r *Grammar) CompileDrop(blueprint driver.Blueprint) string + func (r *Grammar) CompileDropAllDomains(domains []string) string + func (r *Grammar) CompileDropAllTables(_ string, _ []driver.Table) []string + func (r *Grammar) CompileDropAllTypes(_ string, _ []driver.Type) []string + func (r *Grammar) CompileDropAllViews(_ string, _ []driver.View) []string + func (r *Grammar) CompileDropColumn(blueprint driver.Blueprint, command *driver.Command) []string + func (r *Grammar) CompileDropForeign(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileDropFullText(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileDropIfExists(blueprint driver.Blueprint) string + func (r *Grammar) CompileDropIndex(_ driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileDropPrimary(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileDropUnique(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileEnableWriteableSchema() string + func (r *Grammar) CompileForeign(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileForeignKeys(_, table string) string + func (r *Grammar) CompileFullText(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileInRandomOrder(builder sq.SelectBuilder, conditions *driver.Conditions) sq.SelectBuilder + func (r *Grammar) CompileIndex(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileIndexes(_, table string) (string, error) + func (r *Grammar) CompileJsonColumnsUpdate(values map[string]any) (map[string]any, error) + func (r *Grammar) CompileJsonContains(column string, value any, isNot bool) (string, []any, error) + func (r *Grammar) CompileJsonContainsKey(column string, isNot bool) string + func (r *Grammar) CompileJsonLength(column string) string + func (r *Grammar) CompileJsonSelector(column string) string + func (r *Grammar) CompileJsonValues(args ...any) []any + func (r *Grammar) CompileLockForUpdate(builder sq.SelectBuilder, conditions *driver.Conditions) sq.SelectBuilder + func (r *Grammar) CompileLockForUpdateForGorm() clause.Expression + func (r *Grammar) CompilePlaceholderFormat() driver.PlaceholderFormat + func (r *Grammar) CompilePrimary(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompilePrune(_ string) string + func (r *Grammar) CompileRandomOrderForGorm() string + func (r *Grammar) CompileRename(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileRenameColumn(blueprint driver.Blueprint, command *driver.Command, _ []driver.Column) (string, error) + func (r *Grammar) CompileRenameIndex(blueprint driver.Blueprint, command *driver.Command, indexes []driver.Index) []string + func (r *Grammar) CompileSharedLock(builder sq.SelectBuilder, conditions *driver.Conditions) sq.SelectBuilder + func (r *Grammar) CompileSharedLockForGorm() clause.Expression + func (r *Grammar) CompileTableComment(_ driver.Blueprint, _ *driver.Command) string + func (r *Grammar) CompileTables(database string) string + func (r *Grammar) CompileTypes() string + func (r *Grammar) CompileUnique(blueprint driver.Blueprint, command *driver.Command) string + func (r *Grammar) CompileVersion() string + func (r *Grammar) CompileViews(database string) string + func (r *Grammar) GetAttributeCommands() []string + func (r *Grammar) GetModifiers() []func(blueprint driver.Blueprint, column driver.ColumnDefinition) string + func (r *Grammar) ModifyDefault(blueprint driver.Blueprint, column driver.ColumnDefinition) string + func (r *Grammar) ModifyIncrement(blueprint driver.Blueprint, column driver.ColumnDefinition) string + func (r *Grammar) ModifyNullable(blueprint driver.Blueprint, column driver.ColumnDefinition) string + func (r *Grammar) TypeBigInteger(column driver.ColumnDefinition) string + func (r *Grammar) TypeBoolean(_ driver.ColumnDefinition) string + func (r *Grammar) TypeChar(column driver.ColumnDefinition) string + func (r *Grammar) TypeDate(column driver.ColumnDefinition) string + func (r *Grammar) TypeDateTime(column driver.ColumnDefinition) string + func (r *Grammar) TypeDateTimeTz(column driver.ColumnDefinition) string + func (r *Grammar) TypeDecimal(column driver.ColumnDefinition) string + func (r *Grammar) TypeDouble(column driver.ColumnDefinition) string + func (r *Grammar) TypeEnum(column driver.ColumnDefinition) string + func (r *Grammar) TypeFloat(column driver.ColumnDefinition) string + func (r *Grammar) TypeInteger(column driver.ColumnDefinition) string + func (r *Grammar) TypeJson(column driver.ColumnDefinition) string + func (r *Grammar) TypeJsonb(column driver.ColumnDefinition) string + func (r *Grammar) TypeLongText(column driver.ColumnDefinition) string + func (r *Grammar) TypeMediumInteger(column driver.ColumnDefinition) string + func (r *Grammar) TypeMediumText(column driver.ColumnDefinition) string + func (r *Grammar) TypeSmallInteger(column driver.ColumnDefinition) string + func (r *Grammar) TypeString(column driver.ColumnDefinition) string + func (r *Grammar) TypeText(column driver.ColumnDefinition) string + func (r *Grammar) TypeTime(column driver.ColumnDefinition) string + func (r *Grammar) TypeTimeTz(column driver.ColumnDefinition) string + func (r *Grammar) TypeTimestamp(column driver.ColumnDefinition) string + func (r *Grammar) TypeTimestampTz(column driver.ColumnDefinition) string + func (r *Grammar) TypeTinyInteger(column driver.ColumnDefinition) string + func (r *Grammar) TypeTinyText(column driver.ColumnDefinition) string + func (r *Grammar) TypeUuid(column driver.ColumnDefinition) string + type Processor struct + func NewProcessor() *Processor + func (r Processor) ProcessColumns(dbColumns []driver.DBColumn) []driver.Column + func (r Processor) ProcessForeignKeys(dbForeignKeys []driver.DBForeignKey) []driver.ForeignKey + func (r Processor) ProcessIndexes(dbIndexes []driver.DBIndex) []driver.Index + func (r Processor) ProcessTypes(types []driver.Type) []driver.Type + type ServiceProvider struct + func (r *ServiceProvider) Boot(app foundation.Application) + func (r *ServiceProvider) Register(app foundation.Application) + func (r *ServiceProvider) Relationship() binding.Relationship + type Sqlite struct + func NewSqlite(config config.Config, log log.Log, connection string) *Sqlite + func (r *Sqlite) Docker() (docker.DatabaseDriver, error) + func (r *Sqlite) Grammar() driver.Grammar + func (r *Sqlite) Pool() database.Pool + func (r *Sqlite) Processor() driver.Processor