inserter.go 566 B

123456789101112131415161718192021222324252627
  1. package core
  2. import "git.ycl.pub/yl32940/TsDB2/DB/core/types"
  3. // Inserter 插入操作对象
  4. type Inserter struct {
  5. table *Table
  6. fields []types.FieldValue
  7. }
  8. func (table *Table) Insert() *Inserter {
  9. return &Inserter{table: table}
  10. }
  11. // Set 设置字段值
  12. func (i *Inserter) Set(field string, value interface{}, typ types.FieldType) *Inserter {
  13. i.fields = append(i.fields, types.FieldValue{
  14. FieldName: []byte(field),
  15. Value: value,
  16. })
  17. return i
  18. }
  19. // Exec 执行插入
  20. func (i *Inserter) Exec() (uint64, error) {
  21. return i.table.InsertRow(i.fields)
  22. }