Documentation
¶
Index ¶
- Variables
- func NewNullBool(val bool) sql.NullBool
- func NewNullBytes(val []byte) sql.NullString
- func NewNullFloat64(val float64) sql.NullFloat64
- func NewNullInt64(val int64) sql.NullInt64
- func NewNullString(val string) sql.NullString
- func NewNullTime(val time.Time) sql.NullTime
- type EncryptColumn
- type JsonColumn
- type Rows
- type Scanner
Examples ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrNoMoreRows = errors.New("ekit: 已读取完")
)
Functions ¶
func NewNullBool ¶ added in v0.0.9
func NewNullBytes ¶ added in v0.0.9
func NewNullBytes(val []byte) sql.NullString
func NewNullFloat64 ¶ added in v0.0.9
func NewNullFloat64(val float64) sql.NullFloat64
func NewNullInt64 ¶ added in v0.0.9
func NewNullString ¶ added in v0.0.9
func NewNullString(val string) sql.NullString
Types ¶
type EncryptColumn ¶
EncryptColumn 代表一个加密的列 一般来说加密可以选择依赖于数据库进行加密 EncryptColumn 并不打算使用极其难破解的加密算法 而是选择使用 AES GCM 模式。 如果你觉得安全性不够,那么你可以考虑自己实现类似的结构体.
func (*EncryptColumn[T]) Scan ¶
func (e *EncryptColumn[T]) Scan(src any) error
Scan 方法会把写入的数据转化进行解密, 并将解密后的数据进行反序列化,构造 T
type JsonColumn ¶
JsonColumn 代表存储字段的 json 类型 主要用于没有提供默认 json 类型的数据库 T 可以是结构体,也可以是切片或者 map 理论上来说一切可以被 json 库所处理的类型都能被用作 T 不建议使用指针作为 T 的类型 如果 T 是指针,那么在 Val 为 nil 的情况下,一定要把 Valid 设置为 false
type Scanner ¶ added in v0.0.8
type Scanner interface { Scan() (values []any, err error) // ScanAll 扫描当前结果集的全部数据 ScanAll() (allValues [][]any, err error) // NextResultSet 移动到下一个结果集 NextResultSet() bool }
Scanner 用于简化sql.Rows包中的Scan操作 Scanner 不会关闭sql.Rows,用户需要对此负责
func NewSQLRowsScanner ¶ added in v0.0.8
NewSQLRowsScanner 返回一个Scanner
Click to show internal directories.
Click to hide internal directories.