CRUD 基础操作专题测试
考察知识点
- 创建记录(Create):Create 方法、批量创建 CreateInBatches、主键回填
- 查询记录(Read):First/Take/Last、Where 条件、Or/And 组合、Find 查询
- 更新记录(Update):Update 单字段、Updates 多字段、Save 保存、零值处理
- 删除记录(Delete):Delete 方法、软删除、Unscoped 永久删除
- 查询条件构建:链式调用、条件组合、排序分页
1
单选题
GORM 的 Update 方法和 Updates 方法的主要区别是什么?
2
多选题
以下哪些是 GORM 支持的更新方式?
3
判断题
使用 Updates 方法传入结构体时,零值字段(如 0、空字符串)不会被更新到数据库。
4
单选题
GORM 默认对包含 DeletedAt 字段的模型执行什么类型的删除?
5
多选题
在 GORM 中,如何执行真正的物理删除(硬删除)?
6
判断题
使用 Delete 方法删除记录后,可以通过 result.RowsAffected 获取删除的记录数。
7
单选题
以下哪个是正确的 GORM Where 查询方式?
8
多选题
以下哪些是 GORM 支持的查询条件构建方式?
9
填空题
使用______方法可以构建否定条件,如 db.Not("status = ?", 1) 等价于___________。
10
单选题
使用 db.Create(&user) 创建记录后,user 对象的 ID 字段会怎样?
11
多选题
以下哪些是 GORM 支持的批量创建方式?
12
单选题
db.First(&user) 和 db.Take(&user) 的主要区别是什么?
13
判断题
db.Find(&users) 不加任何条件会查询表中的所有记录。
14
多选题
以下哪些是 GORM Delete 方法的正确调用方式?
15
单选题
db.Where("name = ?", "A").Or("name = ?", "B").Find(&users) 的 SQL 等价语句是?
16
多选题
db.Where(map[string]interface{}{"name": "A", "age": 18}) 的查询条件是什么?
17
单选题
db.First(&user) 如果没有找到记录,会返回什么?
18
判断题
db.Save(&user) 会更新结构体中的所有字段,包括零值字段。
📝 发现内容有误?点击此处直接编辑
想参加完整模拟考试?
小程序提供计时考试、自动评分和详细解析
长按或扫描二维码,立即体验