errors.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package core
  2. import "errors"
  3. var (
  4. ErrDBNotInitialized = errors.New("数据库未初始化,请先调用 Open()")
  5. ErrTableNotFound = errors.New("表不存在")
  6. ErrTableNameTooLong = errors.New("表名过长")
  7. ErrIndexNameTooLong = errors.New("索引名过长")
  8. ErrTableExists = errors.New("表已存在")
  9. ErrInvalidFieldCount = errors.New("字段数量非法")
  10. ErrFieldAllocateTooLarge = errors.New("字段分配空间过大")
  11. ErrIndexFieldCount = errors.New("索引字段数量必须在 1-16 之间")
  12. ErrIndexFieldDuplicated = errors.New("索引字段重复: 同一列在一个索引里只能出现一次")
  13. ErrIndexCompositeRowStore = errors.New("主键/时序这类行存储索引不支持复合键")
  14. ErrRowStoreExists = errors.New("表上已存在行存储索引: 主键索引与时序索引不能共存")
  15. ErrIndexDynamicField = errors.New("动态列不能作为索引键: 行内只存堆引用, 按值查不到而且写索引时会 panic")
  16. ErrIndexBlobField = errors.New("blob 列不能作为索引键: 行内只存 8 字节链引用, 索引键会变成页号而不是内容")
  17. ErrIndexRowTooWide = errors.New("索引分量列过宽: 建索引后该列不能再值级溢出, 行内最小宽度会超过一页两行的上限")
  18. ErrIndexExists = errors.New("索引已存在")
  19. ErrDuplicatedKey = errors.New("唯一约束冲突: 该值已存在")
  20. ErrUniqueRowStore = errors.New("行存储索引不支持唯一约束: 主键本就唯一, 时序键则允许同一时刻多行")
  21. ErrFieldNotFound = errors.New("字段未找到")
  22. ErrFieldExists = errors.New("字段已存在")
  23. ErrFieldSpaceNotEnough = errors.New("字段扩展空间不足,且无法分配新页")
  24. ErrPageRead = errors.New("当前页不存在")
  25. ErrHeapPageTooLarge = errors.New("申请空间超过单页最大容量")
  26. ErrNotFound = errors.New("键未找到")
  27. ErrIndexNotFound = errors.New("索引未找到")
  28. ErrDuplicatePK = errors.New("主键已存在")
  29. ErrTxnActive = errors.New("当前有活跃事务, 请先提交或回滚")
  30. ErrVACUUMNoPath = errors.New("VACUUM 拒绝: db 路径不可用")
  31. ErrVACUUMTxnContext = errors.New("VACUUM 在写入过程中检测到新事务开启, 已回滚重写")
  32. )