dao

package
v0.1.32 Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	URIRequiredError = errors.New("uri is required")
)

Functions

This section is empty.

Types

type Database

type Database interface {
	Init() error
	// 数据库自动迁移,用于创建新表
	AutoMigrate(models ...interface{}) error
	// 插入一条记录
	Insert(model interface{}) error
	// 插入多条记录
	InsertMany(models []interface{}) error
	// 根据主键查询一条记录
	Select(model interface{}, pk interface{}) error
	// 根据主键查询多条记录
	SelectMany(model interface{}, pks []interface{}) error
	// 获取表的全部记录
	SelectAll(models []interface{}) error
	// 根据条件获取一条记录
	SelectOneWithWhere(model interface{}, where interface{}, args ...interface{}) error
	// 根据条件获取全部记录
	SelectAllWithWhere(models []interface{}, where interface{}, args ...interface{}) error
	// 更新一列,只更新非零值字段
	Update(model interface{}, column string, val interface{}) error
	// 更新多列,只更新非零值字段
	Updates(model interface{}, where interface{}) error
	// 更新所有字段,即使字段是零值,此举会覆盖原记录的所有字段
	ForcedUpdate(model interface{}) error
	// 根据主键删除
	Delete(model interface{}) error
	// 根据条件删除
	DeleteWithWhere(model interface{}, where string, args ...interface{}) error
	// 清空表
	Truncate(model interface{}) error
}

type MySQL

type MySQL struct {
	Host, Port, Database, Username, Password string
	DB                                       *gorm.DB
}

func (*MySQL) AutoMigrate

func (m *MySQL) AutoMigrate(models ...interface{}) error

func (*MySQL) Delete

func (m *MySQL) Delete(model interface{}) error

Delete 根据主键删除

func (*MySQL) DeleteWithWhere

func (m *MySQL) DeleteWithWhere(model interface{}, where string, args ...interface{}) error

DeleteWithWhere 根据条件删除

func (*MySQL) ForcedUpdate

func (m *MySQL) ForcedUpdate(model interface{}) error

ForcedUpdate 更新所有字段,即使字段是零值,此举会覆盖原记录的所有字段

func (*MySQL) Init

func (m *MySQL) Init() error

func (*MySQL) Insert

func (m *MySQL) Insert(model interface{}) error

func (*MySQL) InsertMany

func (m *MySQL) InsertMany(models []interface{}) error

func (*MySQL) Select

func (m *MySQL) Select(model interface{}, pk interface{}) error

Select 用主键查询

func (*MySQL) SelectAll

func (m *MySQL) SelectAll(models []interface{}) error

SelectAll 获取表的全部记录

func (*MySQL) SelectAllWithWhere

func (m *MySQL) SelectAllWithWhere(models []interface{}, where interface{}, args ...interface{}) error

func (*MySQL) SelectMany

func (m *MySQL) SelectMany(model interface{}, pks []interface{}) error

SelectMany 用多个主键查询

func (*MySQL) SelectOneWithWhere

func (m *MySQL) SelectOneWithWhere(model interface{}, where interface{}, args ...interface{}) error

func (*MySQL) Truncate

func (m *MySQL) Truncate(model interface{}) error

func (*MySQL) Update

func (m *MySQL) Update(model interface{}, column string, val interface{}) error

Update 更新一列,只更新非零值字段

func (*MySQL) Updates

func (m *MySQL) Updates(model interface{}, where interface{}) error

Updates 更新多列,只更新非零值字段

type PostgreSQL

type PostgreSQL struct {
	Host, Port, Database, Username, Password, SSLMode, TimeZone string
	DB                                                          *gorm.DB
}

func (*PostgreSQL) AutoMigrate

func (p *PostgreSQL) AutoMigrate(models ...interface{}) error

func (*PostgreSQL) Delete

func (p *PostgreSQL) Delete(model interface{}) error

Delete 根据主键删除

func (*PostgreSQL) DeleteWithWhere

func (p *PostgreSQL) DeleteWithWhere(model interface{}, where string, args ...interface{}) error

DeleteWithWhere 根据条件删除

func (*PostgreSQL) ForcedUpdate

func (p *PostgreSQL) ForcedUpdate(model interface{}) error

ForcedUpdate 更新所有字段,即使字段是零值,此举会覆盖原记录的所有字段

func (*PostgreSQL) Init

func (p *PostgreSQL) Init() error

func (*PostgreSQL) Insert

func (p *PostgreSQL) Insert(model interface{}) error

func (*PostgreSQL) InsertMany

func (p *PostgreSQL) InsertMany(models []interface{}) error

func (*PostgreSQL) Select

func (p *PostgreSQL) Select(model interface{}, pk interface{}) error

Select 用主键查询

func (*PostgreSQL) SelectAll

func (p *PostgreSQL) SelectAll(models []interface{}) error

SelectAll 获取表的全部记录

func (*PostgreSQL) SelectAllWithWhere

func (p *PostgreSQL) SelectAllWithWhere(models []interface{}, where interface{}, args ...interface{}) error

func (*PostgreSQL) SelectMany

func (p *PostgreSQL) SelectMany(model interface{}, pks []interface{}) error

SelectMany 用多个主键查询

func (*PostgreSQL) SelectOneWithWhere

func (p *PostgreSQL) SelectOneWithWhere(model interface{}, where interface{}, args ...interface{}) error

func (*PostgreSQL) Truncate

func (p *PostgreSQL) Truncate(model interface{}) error

func (*PostgreSQL) Update

func (p *PostgreSQL) Update(model interface{}, column string, val interface{}) error

Update 更新一列,只更新非零值字段

func (*PostgreSQL) Updates

func (p *PostgreSQL) Updates(model interface{}, where interface{}) error

Updates 更新多列,只更新非零值字段

type Sqlite

type Sqlite struct {
	URI string
	DB  *gorm.DB
}

func (*Sqlite) AutoMigrate

func (s *Sqlite) AutoMigrate(models ...interface{}) error

func (*Sqlite) Delete

func (s *Sqlite) Delete(model interface{}) error

Delete 根据主键删除

func (*Sqlite) DeleteWithWhere

func (s *Sqlite) DeleteWithWhere(model interface{}, where string, args ...interface{}) error

DeleteWithWhere 根据条件删除

func (*Sqlite) ForcedUpdate

func (s *Sqlite) ForcedUpdate(model interface{}) error

ForcedUpdate 更新所有字段,即使字段是零值,此举会覆盖原记录的所有字段

func (*Sqlite) Init

func (s *Sqlite) Init() error

func (*Sqlite) Insert

func (s *Sqlite) Insert(model interface{}) error

func (*Sqlite) InsertMany

func (s *Sqlite) InsertMany(models []interface{}) error

func (*Sqlite) Select

func (s *Sqlite) Select(model interface{}, pk interface{}) error

Select 用主键查询

func (*Sqlite) SelectAll

func (s *Sqlite) SelectAll(models []interface{}) error

SelectAll 获取表的全部记录

func (*Sqlite) SelectAllWithWhere

func (s *Sqlite) SelectAllWithWhere(models []interface{}, where interface{}, args ...interface{}) error

func (*Sqlite) SelectMany

func (s *Sqlite) SelectMany(model interface{}, pks []interface{}) error

SelectMany 用多个主键查询

func (*Sqlite) SelectOneWithWhere

func (s *Sqlite) SelectOneWithWhere(model interface{}, where interface{}, args ...interface{}) error

func (*Sqlite) Truncate

func (s *Sqlite) Truncate(model interface{}) error

func (*Sqlite) Update

func (s *Sqlite) Update(model interface{}, column string, val interface{}) error

Update 更新一列,只更新非零值字段

func (*Sqlite) Updates

func (s *Sqlite) Updates(model interface{}, where interface{}) error

Updates 更新多列,只更新非零值字段

Jump to

Keyboard shortcuts

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