这是我参与「第三届青训营 -后端场」笔记创作活动的第3篇笔记
青训营
01.理解database/sql
database/sql目的是提供统一的接口去操作不同的数据库。
1.1 基本用法 - Quick Start
本段代码没有检查rows.Close()是否会出错
需要加
err = rows.Close()
1.2 设计原理
需要import不同数据库的driver,容易忘记。
02.GORM基础使用
2.1 背景知识
“设计简单、功能强大、自由扩展的全功能ORM”
2.2 基本用法
CRUD crud是指在做计算处理时的增加(Create)、检索(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。
2.3 模型定义
如右边的图所示,模型之间可以嵌套。
约定优于配置
2.4 关联介绍
2.4 关联操作-CRUD
03. GORM设计原理
3.1 SQL是怎么生成的
GORM为什么这么做,主要有以下几个原因:
①主要是因为不同的数据库甚至不同版本的数据库支持的SQL不同,GORM这么处理之后就可以很方便的解决这个问题。
②方便扩展子句
3.2 插件是怎么工作的
多租户
自动通过租户ID实现操作的过滤。
多数据库、读写分离