全部学科
Python全栈
python
NodeJS全栈
nodejs

模型标签与字段配置专题测试

19 题 35 分钟 难度:★

考察知识点

  • struct tag 配置(gorm tag)
  • 字段类型映射
  • 主键、自增与默认值
  • 忽略字段与自定义表名
💡 参考答案在文末
判断题
1

使用 gorm:"->" 配置的字段的字段,在 Create 和 Update 操作时不会被写入数据库,但在 Query 操作时可以正常加载。

A

B

2

使用 gorm:"uniqueIndex" tag 可以创建唯一索引,确保列值不重复。

A

B

3

一个字段的 gorm tag 可以同时配置多个选项,如 gorm:"column:user_name;type:varchar(100);index"

A

B

单选题
4

如何为 GORM 模型的 Name 字段创建普通索引?

A

gorm:"index"

B

gorm:"uniqueIndex"

C

gorm:"primary_key"

D

gorm:"autoIncrement"

5

在 GORM 模型中,如何为字段设置数据库列名?

A

json:"column_name"

B

gorm:"column:column_name"

C

db:"column_name"

D

sql:"column_name"

6

如何让 GORM 忽略某个结构体字段,不映射到数据库列?

A

gorm:"-"

B

gorm:"ignore"

C

json:"-"

D

db:"skip"

7

如何在 GORM 模型中忽略某个字段,使其不被映射到数据库?

A

gorm:"ignore:true"

B

gorm:"-"

C

将字段设为私有(小写开头)

D

gorm:"skip:true"

8

如何为 Status 字段设置默认值为 1?

A

gorm:"default:1"

B

default:"1"

C

gorm:"init:1"

D

Status int = 1

9

如何在 GORM 模型中为字段设置数据库默认值?

A

gorm:"default:'张三'"

B

default:"张三"

C

gorm:"value:'张三'"

D

sql:"default:张三"

10

如何在 GORM 模型中为字段创建普通索引?

A

gorm:"index"

B

gorm:"unique"

C

gorm:"primary_key"

D

index:"idx_name"

多选题
11

以下哪些是 GORM 索引标签支持的配置?

A

gorm:"index:idx_name" 自定义索引名称

B

gorm:"index:,sort:desc" 指定索引排序方向

C

gorm:"index:,where:status = 1" 创建部分索引

D

gorm:"uniqueIndex" 创建唯一索引

12

以下关于 GORM 默认值标签的描述,哪些是正确的?

A

默认值在 AutoMigrate 时应用到数据库

B

插入记录时,如果字段为空会自动使用默认值

C

默认值只在数据库层面生效,不影响 GORM 行为

D

可以使用 current_timestamp 设置时间默认值

13

以下哪些方式可以创建复合索引(多列索引)?

A

gorm:"index:idx_name_age"

B

gorm:"index:idx1"

C

gorm:"composite_index:idx_name_age"

D

相同索引名的字段自动组合为复合索引

14

以下哪些是 GORM 的 gorm tag 支持的配置项?

A

column 指定列名

B

type 指定数据库类型

C

primaryKey 设置为主键

D

json 设置 JSON 格式

15

以下哪些是 GORM 支持的字段忽略或只读配置?

A

gorm:"-" 完全忽略字段

B

gorm:"->" 只读字段(查询时加载,插入/更新时忽略)

C

gorm:"<-:create" 只在创建时写入

D

gorm:"<-:update" 只在更新时写入

16

以下哪些方式可以配置只读字段(查询时读取,创建/更新时忽略)?

A

gorm:"->"

B

gorm:"<-:false"

C

gorm:"readOnly"

D

gorm:"write:false"

填空题
17

创建复合索引可以使用 gorm:"index:idx_name_composite" 为多个字段设置____________,GORM 会自动创建____________

18

为时间字段设置默认值为当前时间,可以使用 gorm:"default:____________",这在____________等数据库中都支持。

19

密码字段可以配置为只写(创建时写入,查询时不返回),使用 gorm 标签____________

参考答案
1.正确 2.正确 3.正确 4.A 5.B 6.A 7.B 8.A 9.A 10.A 11.A;C;D 12.A;B;D 13.A;B;D 14.A;B;C 15.A;B;C;D 16.A;B 17.相同的索引名称;复合索引 18.current_timestamp;MySQL/PostgreSQL 19.<-:create
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一套试卷 数据迁移与版本管理专题测试
下一套试卷 → 源码分析与底层原理专题测试
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码