zorm是go(golang)轻量级ORM,零依赖,零侵入分布式事务,支持达梦(dm),金仓(kingbase),神通(shentong),南大通用(gbase),mysql,postgresql,oracle,mssql,sqlite,clickhouse数据库.

源码地址:

 go get gitee.com/chunanyong/zorm   
  • 基于原生sql语句编写,是springrain的精简和优化.
  • 自带代码生成器
  • 代码精简,主体2500行,零依赖4000行,注释详细,方便定制修改
  • 支持事务传播,这是zorm诞生的主要原因
  • 支持mysql,postgresql,oracle,mssql,sqlite, dm(达梦),kingbase(金仓),shentong(神通),gbase(南通),clickhouse
  • 支持多库和读写分离
  • 更新性能zorm,gorm,xorm相当. 读取性能zorm比gorm,xorm快一倍
  • 不支持联合主键,变通认为无主键,业务控制实现(艰难取舍)
  • 集成seata-golang,支持全局托管,不修改业务代码,零侵入分布式事务
  • 支持clickhouse,更新,删除语句使用SQL92标准语法.clickhouse-go官方驱动不支持批量insert语法,建议使用
  • 测试用例即文档:

生产使用参考 UserStructService.go

更新:

  1. 完善文档,注释
  2. 注释未使用的代码
  3. 先判断error,再执行defer rows.Close()
  4. 优化SQL提取的正则表达式
  5. 增加社区支持微信号[ LAUV927 ](负责人是八块腹肌的单身小伙 @zhou-a-xing)