rem:复古的Golang ORM
💡
原文中文,约2100字,阅读约需5分钟。
📝
内容提要
REM是一种新的Golang ORM,支持PostgreSQL和MySQL方言,即将推出SQLite方言。它具有优化外键和一对多预取的功能,支持扩展查询生成器和特定于数据库的功能。REM与数据库/sql连接和驱动程序解耦,支持安全参数化的SQL格式。它支持事务和golang上下文,还具有子查询、连接、选择性获取、地图扫描等功能。REM可以优化外键和一对多记录查找,并通过FetchRelated方法实现预取。它还支持事务操作。
🎯
关键要点
- REM是Retro Entity Mapper的缩写,是一种新的Golang ORM。
- 支持PostgreSQL和MySQL方言,SQLite方言即将推出。
- 具有优化外键和一对多预取的功能。
- 支持扩展查询生成器和特定于数据库的功能。
- 与数据库/sql连接和驱动程序解耦,性能差异可以忽略不计。
- 支持安全参数化的SQL格式,具有显式null和非null类型的标准化安全性。
- 支持事务和golang上下文,具有子查询、连接、选择性获取、地图扫描等功能。
- 模型定义表模式,使用rem.Register和rem.Use进行注册和查询。
- 支持一对多关系表的定义和查询。
- 通过FetchRelated方法优化外键和一对多记录查找,只需执行一次额外查询。
- 通过Transaction方法支持事务操作,确保数据一致性。
🏷️
标签
➡️