db

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 15, 2023 License: BSD-3-Clause Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MONGODB_NAME = "mongo"
	REDIS_NAME   = "redis"
	MYSQL_NAME   = "mysql"
)

Variables

This section is empty.

Functions

func NewConfigDbClient

func NewConfigDbClient(ctx context.Context, name string, config Config) (gen_server.DbClient, error)

根据配置构造db client

func NewConfigMongoDbClient

func NewConfigMongoDbClient(ctx context.Context, name string, config Config) (gen_server.DbClient, error)

根据配置构造mongodb client

func NewConfigMysqlClient

func NewConfigMysqlClient(ctx context.Context, name string, config Config) (gen_server.DbClient, error)

根据配置构造mysql client

func NewConfigRedisClient

func NewConfigRedisClient(ctx context.Context, name string, config Config) (gen_server.DbClient, error)

根据配置构造redis client

func NewDbClientFromUri

func NewDbClientFromUri(ctx context.Context, name string, uri string) (gen_server.DbClient, error)

根据url构造db client

Types

type Config

type Config struct {
	Driver          string        `yaml:"driver"`
	Host            string        `yaml:"host"`
	Port            int           `yaml:"port"`
	User            string        `yaml:"user"`
	Password        string        `yaml:"password"`
	Db              string        `yaml:"db"`
	Query           string        `yaml:"query"`
	MaxOpenConns    int           `yaml:"max-open-conns"`
	MaxIdleConns    int           `yaml:"max-idle-conns"`
	ConnMaxIdleTime time.Duration `yaml:"conn-max-idle-time"`
	ConnMaxLifetime time.Duration `yaml:"conn-max-lifetime"`
	ConnnectTimeout time.Duration `yaml:"connect-timeout"`
}

func (Config) GormUri

func (self Config) GormUri() string

func (*Config) Parse

func (self *Config) Parse(uri string) error

func (Config) Uri

func (self Config) Uri() string

完整的地址,包括path部分

type MigrateConnectTimeout

type MigrateConnectTimeout struct {
	// contains filtered or unexported fields
}

func WithMigrateConnectTimeout

func WithMigrateConnectTimeout(timeout int64) MigrateConnectTimeout

设置连接超时时间

func (MigrateConnectTimeout) ConfigMigrateOptions

func (opt MigrateConnectTimeout) ConfigMigrateOptions(opts *MigrateOptions)

type MigrateDropIndex

type MigrateDropIndex struct {
	// contains filtered or unexported fields
}

func WithMigrateDropIndex

func WithMigrateDropIndex(enabled bool) MigrateDropIndex

设置允许drop index

func (MigrateDropIndex) ConfigMigrateOptions

func (opt MigrateDropIndex) ConfigMigrateOptions(opts *MigrateOptions)

type MigrateOption

type MigrateOption interface {
	ConfigMigrateOptions(opts *MigrateOptions)
}

type MigrateOptions

type MigrateOptions struct {
	EnabledDropIndex bool
	ConnectTimeout   int64
}

========= migrate选项 ==================

type MongoDbClient

type MongoDbClient struct {
	// contains filtered or unexported fields
}

mongodb客户端

func (*MongoDbClient) GetMongoClient

func (self *MongoDbClient) GetMongoClient() *mongo.Client

func (*MongoDbClient) GetMongoDatabase

func (self *MongoDbClient) GetMongoDatabase() *mongo.Database

func (*MongoDbClient) Uri

func (self *MongoDbClient) Uri() string

type MysqlClient

type MysqlClient struct {
	// contains filtered or unexported fields
}

mysql客户端

func (*MysqlClient) GetMysqlClient

func (self *MysqlClient) GetMysqlClient() *sql.DB

func (*MysqlClient) Uri

func (self *MysqlClient) Uri() string

type RedisClient

type RedisClient struct {
	// contains filtered or unexported fields
}

redis客户端

func (*RedisClient) GetRedisClient

func (self *RedisClient) GetRedisClient() *redis.Client

func (*RedisClient) Uri

func (self *RedisClient) Uri() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL