GORM
GORM 是 Go 生态中常见的 ORM 库,用于在结构体模型和关系型数据库之间提供更高层的数据访问封装。
#type / resource
#status / growing
#tech / dev / backend
#resource / go
[!info] related notes
- 所属 MOC: Go 数据访问 MOC
- 底层抽象: Go 中的 database/sql
- 相邻主题: 数据库 MOC
GORM
GORM 是 Go 生态中非常常见的一类 ORM 库,常被用来快速完成模型映射、CRUD 和迁移相关工作。
这是什么
把 GORM 放到 Go 主题里理解时,最重要的是明确它的位置:
- 它不是 Go 语言本体
- 它不是数据库基础理论
- 它是建立在 Go 数据模型和数据库访问需求之间的一层工程封装
它解决什么问题
- 用结构体表达数据模型
- 减少重复 SQL 样板
- 统一常见 CRUD 工作流
- 在一些项目里加快业务开发速度
它的代价和边界
- 抽象提高了效率,也会隐藏部分底层 SQL 细节
- 查询性能、事务边界和复杂 SQL 仍然需要开发者理解
- 使用 ORM 不等于可以跳过数据库基础
什么时候值得先学底层
如果你还没理解:
- Go 中的 database/sql
- SQL 查询和事务主线
- 数据模型与 JSON / DTO 边界
那先补底层,再看 GORM,会更稳。