当前较为主流/活泼的orm有gorm、xorm、gorose等。 (引荐进修:go)
xorm
支撑的数据库有:mysql、mymysql、postgres、tidb、sqlite、mssql、oracle
事务性支撑
链式api
has, err := engine.Where("name = ?", name).Desc("id").Get(&user)
err := engine.Where(builder.NotIn("a", 1, 2).And(builder.In("b", "c", "d", "e"))).Find(&users)
支撑原生sql操纵
查询缓存
可根据数据库反转生成代码
级联加载
供应sql语句日记输出
支撑批量查询处置惩罚
gorm
hook机制(Before/After Create/Save/Update/Delete/Find)
对象关联Has One, Has Many, Belongs To, Many To Many, Polymorphism
热加载
支撑原生sql操纵
事务性
链式api
tx := db.Where("name = ?", "jinzhu").Where("age = ?", 20).Find(&users)
支撑的数据库有:mysql、postgre、sqlite、sqlserver
查询操纵
gorose
支撑的数据库有:mysql、postgres、sqlite、mssql、oracle
链式api
同时衔接多个数据库和切换
支撑原生sql操纵
支撑批量查询处置惩罚
事务性
相似性
各orm支撑的数据库都基础雷同(主流数据库都支撑)
支撑事务性、链式查询等
差别
xorm、gorose支撑批量查询处置惩罚
xorm支撑主从式读写星散
gorm支撑热加载
gorose便于在多个数据库切换
文档全面性gorm>xorm>gorose
以上就是golang 是不是须要orm的细致内容,更多请关注ki4网别的相干文章!