orm

package
v0.0.0-...-ac7d4c8 Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Dump

func Dump(filesrc string, eg *xorm.Engine, tables []*schemas.Table) error

导出数据库

func InitEngine

func InitEngine(eg *xorm.Engine)

初始化引擎

func Load

func Load(filesrc string, eg *xorm.Engine, tables []ModelInterface) error

加载数据库

func SetModelLock

func SetModelLock(b bool)

设置模块锁是否开启

func TransWarp

func TransWarp(fn func(*Engine))

事务包裹

Types

type DataInfo

type DataInfo struct {
	Mode      int      `json:"m"` //1=表,2=字段
	TableName string   `json:"t"` //表名(所属表)
	Data      []string `json:"d"` //数据
}

type Engine

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

引擎结构体

func (*Engine) DB

func (this *Engine) DB() *xorm.Session

获取session

func (*Engine) ExtendEngine

func (this *Engine) ExtendEngine(parent Enginer)

继承引擎

func (*Engine) FindPage

func (this *Engine) FindPage(db *xorm.Session, listPtr interface{}, page, limit int) int64

分页查询 listPtr = 查询列表指针 page = 页码 limit = 每页查询数量

func (*Engine) GetEngine

func (this *Engine) GetEngine() *xorm.Engine

获取引擎

func (*Engine) IfErrorFatal

func (this *Engine) IfErrorFatal(err error)

如果错误致命

func (*Engine) Model

func (this *Engine) Model(obj ModelInterface) interface{}

初始化模型,并返回模型本身

func (*Engine) SetEngine

func (this *Engine) SetEngine(eg *xorm.Engine)

设置引擎

func (*Engine) Table

func (this *Engine) Table(tableNameOrBean interface{}) *xorm.Session

func (*Engine) ThrowSQL

func (this *Engine) ThrowSQL(msg string, data string)

如果错误致命.

func (*Engine) Transaction

func (this *Engine) Transaction(call func())

事务

type Enginer

type Enginer interface {
	SetEngine(*xorm.Engine)
	GetEngine() *xorm.Engine
	DB() *xorm.Session
	Transaction(func())
}

引擎接口

type ExceptionSQL

type ExceptionSQL struct {
	try.ExceptionBase
}

警告级别错误

func (*ExceptionSQL) Name

func (this *ExceptionSQL) Name() string

type IteratorHandler

type IteratorHandler interface {
	List() interface{}    //列表生成
	Do(interface{}) error //列表处理
}

迭代处理接口

type Model

type Model struct {
	Engine //继承引擎基类
	// contains filtered or unexported fields
}

func (*Model) Alias

func (this *Model) Alias(alias string) string

表别名

func (*Model) Cols

func (this *Model) Cols(cols ...string) *Model

指定添加修改的字段

func (*Model) Delete

func (this *Model) Delete() bool

删除数据(只针对主键id删除)

func (*Model) Exists

func (this *Model) Exists() bool

是否存在

func (*Model) Get

func (this *Model) Get() bool

查询数据信息(根据ID)

func (*Model) InitModel

func (this *Model) InitModel(obj ModelInterface)

初始化数据模型,obj为指针

func (*Model) Insert

func (this *Model) Insert() bool

添加数据

func (*Model) Match

func (this *Model) Match(column string, data interface{}) *Model

根据指定字段获取对象

func (*Model) Must

func (this *Model) Must(cols ...string) *Model

必须有的字段,比如age=0会强制写入数据库

func (*Model) Omit

func (this *Model) Omit(cols ...string) *Model

忽略添加修改的字段

func (*Model) SetData

func (this *Model) SetData(data interface{}) *Model

对data进行增删改查,优先于this.object

func (*Model) Update

func (this *Model) Update() bool

修改数据

func (*Model) Where

func (this *Model) Where(query string, args ...interface{}) *Model

使用条件查询

type ModelInterface

type ModelInterface interface {
	TableName() string        //表名
	PrimaryKey() interface{}  //主键
	ExtendEngine(Enginer)     //继承引擎
	InitModel(ModelInterface) //初始化模型
	Enginer
}

模型接口

type Session

type Session = xorm.Session

session别名

Jump to

Keyboard shortcuts

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