欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
全部教程·
Go语言·
Xorm框架
[目录]
·
Xorm 改变映射名称
Xorm框架 教程
Xorm 引擎
Xorm 单库引擎 Xorm 引擎组 Xorm 引擎组负载策略Xorm 表结构体
Xorm 名称映射规则 Xorm 名称映射前后缀 Xorm 改变映射名称 Xorm Column属性定义 Xorm Go与字段对应表Xorm 数据库操作
Xorm 表结构操作 Xorm 同步数据库结构 Xorm 导出导入SQL Xorm 插入数据 Xorm 记录创建时间Xorm 查询数据
Xorm 查询方法 Xorm 临时开关方法 Xorm Get方法 Xorm Exist方法 Xorm Find方法 Xorm Join语句 Xorm Iterate方法 Xorm Count方法 Xorm Rows方法 Xorm Sum方法Xorm 更新数据
Xorm 更新数据 Xorm 乐观锁 Xorm 更新时间Xorm 删除数据
Xorm 删除数据Xorm SQL
Xorm 执行原生 SQLXorm 高级操作
Xorm 事务处理 Xorm 缓存处理 Xorm 事件处理 Xorm 常用工具 Xorm 常见问题
Xorm框架 教程
Xorm 引擎
Xorm 单库引擎 Xorm 引擎组 Xorm 引擎组负载策略Xorm 表结构体
Xorm 名称映射规则 Xorm 名称映射前后缀 Xorm 改变映射名称 Xorm Column属性定义 Xorm Go与字段对应表Xorm 数据库操作
Xorm 表结构操作 Xorm 同步数据库结构 Xorm 导出导入SQL Xorm 插入数据 Xorm 记录创建时间Xorm 查询数据
Xorm 查询方法 Xorm 临时开关方法 Xorm Get方法 Xorm Exist方法 Xorm Find方法 Xorm Join语句 Xorm Iterate方法 Xorm Count方法 Xorm Rows方法 Xorm Sum方法Xorm 更新数据
Xorm 更新数据 Xorm 乐观锁 Xorm 更新时间Xorm 删除数据
Xorm 删除数据Xorm SQL
Xorm 执行原生 SQLXorm 高级操作
Xorm 事务处理 Xorm 缓存处理 Xorm 事件处理 Xorm 常用工具 Xorm 常见问题Xorm 改变映射名称
如果所有的命名都是按照IMapper的映射来操作的,那当然是最理想的。但是如果碰到某个表名或者某个字段名跟映射规则不匹配时,我们就需要别的机制来改变。xorm 提供了如下几种方式来进行:
- 如果结构体拥有TableName() string的成员方法,那么此方法的返回值即是该结构体对应的数据库表名。
- 通过 engine.Table() 方法可以改变 struct 对应的数据库表的名称,通过 sturct 中 field 对应的 Tag 中使用 xorm:"'column_name'" 可以使该 field 对应的 Column 名称为指定名称。这里使用两个单引号将 Column 名称括起来是为了防止名称冲突,因为我们在 Tag 中还可以对这个 Column 进行更多的定义。如果名称不冲突的情况,单引号也可以不使用。<
到此名称映射的所有方法都给出了,一共三种方式,这三种是有优先级顺序的。
- 表名的优先级顺序如下:
- engine.Table() 指定的临时表名优先级最高;
- TableName() string 其次;
- Mapper 自动映射的表名优先级最后。
- 字段名的优先级顺序如下:
- 结构体tag指定的字段名优先级较高
- Mapper 自动映射的表名优先级较低
下一章:Xorm Column属性定义
我们在 field 对应的 Tag 中,对 Column 一些属性进行了定义,定义的方法类似于定义表结构的 SQL 语句,比如:type User struct { Id int64 Name strin ...
AI 中文社