data_mongodb

package module
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2025 License: MIT Imports: 20 Imported by: 0

README

data-mongodb

infra.Go mongodb data driver.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	DRIVERS = []string{
		"mongodbql", "mongodb", "pgsql", "pgdb", "pg",
		"cockroachdb", "cockroach", "crdb",
		"timescaledb", "timescale", "tsdb",
	}
)
View Source
var (
	SCHEMAS = []string{
		"mgdb://",
		"mongo://",
		"mongodb://",
	}
)

Functions

func Driver

func Driver() data.Driver

返回驱动

Types

type MongodbBase

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

func (*MongodbBase) Batch

func (base *MongodbBase) Batch(next data.BatchFunc) Res

批量操作,包装事务

func (*MongodbBase) Begin

func (base *MongodbBase) Begin() (*sql.Tx, error)

开启手动模式

func (*MongodbBase) Break

func (base *MongodbBase) Break(key string)

删除ID生成器

func (*MongodbBase) Cancel

func (base *MongodbBase) Cancel() error

取消事务

func (*MongodbBase) Close

func (base *MongodbBase) Close() error

关闭数据库

func (*MongodbBase) Erred

func (base *MongodbBase) Erred() error

func (*MongodbBase) Model

func (base *MongodbBase) Model(name string) data.DataModel

获取模型对象

func (*MongodbBase) Serial

func (base *MongodbBase) Serial(key string, start, step int64) int64

ID生成器 序列版

func (*MongodbBase) Submit

func (base *MongodbBase) Submit() error

提交事务

func (*MongodbBase) Table

func (base *MongodbBase) Table(name string) data.DataTable

获取表对象

func (*MongodbBase) View

func (base *MongodbBase) View(name string) data.DataView

获取模型对象

type MongodbConnect

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

数据库连接

func (*MongodbConnect) Base

func (this *MongodbConnect) Base() data.DataBase

func (*MongodbConnect) Close

func (this *MongodbConnect) Close() error

关闭连接

func (*MongodbConnect) Health

func (this *MongodbConnect) Health() (data.Health, error)

健康检查

func (*MongodbConnect) Open

func (this *MongodbConnect) Open() error

打开连接

type MongodbDriver

type MongodbDriver struct{}

func (*MongodbDriver) Connect

func (drv *MongodbDriver) Connect(inst *data.Instance) (data.Connect, error)

驱动连接

type MongodbModel

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

func (*MongodbModel) First

func (model *MongodbModel) First(args ...Any) Map

查询单条 应该不需要用MAP,直接写SQL的

func (*MongodbModel) LimitRange added in v0.2.1

func (model *MongodbModel) LimitRange(limit int64, next data.RangeFunc, args ...Any) Res

查询列表

func (*MongodbModel) Query

func (model *MongodbModel) Query(args ...Any) []Map

查询列表

func (*MongodbModel) Range added in v0.2.1

func (model *MongodbModel) Range(next data.RangeFunc, args ...Any) Res

type MongodbSetting

type MongodbSetting struct {
}

type MongodbTable

type MongodbTable struct {
	MongodbView
}

func (*MongodbTable) Change

func (table *MongodbTable) Change(item Map, dddd Map) Map

修改对象

func (*MongodbTable) Create

func (table *MongodbTable) Create(dddd Map) Map

创建对象

func (*MongodbTable) Delete

func (table *MongodbTable) Delete(args ...Any) int64

批量删除,这可是真删

func (*MongodbTable) Remove

func (table *MongodbTable) Remove(args ...Any) Map

逻辑删除和恢复已经抛弃 这两个功能应该是逻辑层干的事,不应和驱动混在一起 此为物理删除单条记录,并返回记录,所以要先查询单条

func (*MongodbTable) Update

func (table *MongodbTable) Update(update Map, args ...Any) int64

批量更新,直接更了, 没有任何relate相关处理的

type MongodbView

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

func (*MongodbView) Count

func (view *MongodbView) Count(args ...Any) float64

统计数量 添加函数支持 函数(字段)

func (*MongodbView) Entity

func (view *MongodbView) Entity(id Any) Map

查询唯一对象 换成字段*版

func (*MongodbView) First

func (view *MongodbView) First(args ...Any) Map

查询单条 171015改成*版

func (*MongodbView) Group

func (view *MongodbView) Group(field string, args ...Any) []Map

查询分组

func (*MongodbView) Limit

func (view *MongodbView) Limit(offset, limit Any, args ...Any) (int64, []Map)

分页查询 171015更新为字段*版

func (*MongodbView) LimitRange added in v0.2.1

func (view *MongodbView) LimitRange(limit int64, next data.RangeFunc, args ...Any) Res

查询列表

func (*MongodbView) Query

func (view *MongodbView) Query(args ...Any) []Map

查询列表

func (*MongodbView) Range added in v0.2.1

func (view *MongodbView) Range(next data.RangeFunc, args ...Any) Res

Jump to

Keyboard shortcuts

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