orm

package
v0.0.0-...-9ee81a8 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2025 License: GPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Deleter

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

Deleter 删除操作结构体

func (*Deleter) Run

func (d *Deleter) Run() (int64, error)

Run 执行删除

func (*Deleter) Where

func (d *Deleter) Where(cond squirrel.Eq) *Deleter

Where 额外条件

type Inserter

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

Inserter 插入操作结构体

func (*Inserter) Run

func (i *Inserter) Run() (int64, error)

Run 执行插入

TODO: 实现 RETURNING 语法

type Orm

type Orm[T any] struct {
	Client *database.Client
	Data   *T
	PkVal  any
	// contains filtered or unexported fields
}

func Model

func Model[T any](c *database.Client) *Orm[T]

func (*Orm[T]) Create

func (m *Orm[T]) Create() (int64, error)

Create 创建单条记录

func (*Orm[T]) Delete

func (m *Orm[T]) Delete() *Deleter

Delete 删除

func (*Orm[T]) Load

func (m *Orm[T]) Load(data *T) *Orm[T]

func (*Orm[T]) Pk

func (m *Orm[T]) Pk(value any) *Orm[T]

Pk 设置主键值

func (*Orm[T]) Save

func (m *Orm[T]) Save() (int64, error)

Save 保存

func (*Orm[T]) Select

func (m *Orm[T]) Select(cols ...string) *Selector[T]

Select 初始化查询

func (*Orm[T]) Update

func (m *Orm[T]) Update() (int64, error)

Update 更新

func (*Orm[T]) Updates

func (m *Orm[T]) Updates(cols map[string]any) (int64, error)

Updates 更新

func (*Orm[T]) Where

func (m *Orm[T]) Where(where []sq.Sqlizer) *Orm[T]

Where 条件

type Selector

type Selector[T any] struct {
	// contains filtered or unexported fields
}

Selector 查询操作结构体

func (*Selector[T]) Get

func (s *Selector[T]) Get() ([]T, error)

Get 多条查询

func (*Selector[T]) Join

func (s *Selector[T]) Join(join string) *Selector[T]

Join 添加连接

func (*Selector[T]) Limit

func (s *Selector[T]) Limit(limit uint64) *Selector[T]

Limit 设置限制

func (*Selector[T]) Offset

func (s *Selector[T]) Offset(offset uint64) *Selector[T]

Offset 设置偏移

func (*Selector[T]) One

func (s *Selector[T]) One() (*T, error)

One 获取单条记录

func (*Selector[T]) OrderBy

func (s *Selector[T]) OrderBy(clauses ...string) *Selector[T]

OrderBy 添加排序

func (*Selector[T]) Page

func (s *Selector[T]) Page(page, size uint64) *Selector[T]

Page 分页

func (*Selector[T]) Where

func (s *Selector[T]) Where(cond squirrel.Sqlizer) *Selector[T]

Where 添加条件

type Updater

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

Updater 更新操作结构体

func (*Updater) Run

func (u *Updater) Run() (int64, error)

Run 执行更新

func (*Updater) Where

func (u *Updater) Where(cond squirrel.Sqlizer) *Updater

Where 额外条件

Jump to

Keyboard shortcuts

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