database/sql
设计原理:
flowchart LR
n1[应用程序] -- 操作接口 --- n2[database/sql] -- 连接接口 --- n3[数据库]
应用程序和 database/sql 之间视作上层应用,database/sql 是连接池,database/sql 和数据库之间是数据库 driver。
GORM 基础使用
设计简洁,功能强大,自由扩展的全功能 ORM。
设计原则:API 精简,测试优先,最小惊讶,灵活扩展,无依赖,可信赖
功能完善:
- 关联:一对一,一对多,单表自关联,多态;Preload,Joins 预加载,级联删除;关联模式;自定义关联表
- 事务:事务代码块,嵌套事务,Save Point
- 多数据库,读写分离,命名参数,Mao,子查询,分组条件,代码共享,SQL 表达式(查询,创建,更新),自动选字段,查询优化器
- 字段权限,软删除,批量数据处理,Prepared Stmt,自定义类型,命名策略,虚拟字段,自动 track 时间,SQL Builder,Logger
- 代码生成,复合主键,Constraint,Prometheus,Auto Migration,真·跨数据库兼容...
- 多模式灵活自由扩展
- Developer Friendly
代码例子之后补充。