欢迎来到 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 同步数据库结构
同步能够部分智能的根据结构体的变动检测表结构的变动,并自动同步。目前有两个实现:
1. Sync
Sync将进行如下的同步操作:
* 自动检测和创建表,这个检测是根据表的名字 * 自动检测和新增表中的字段,这个检测是根据字段名 * 自动检测和创建索引和唯一索引,这个检测是根据索引的一个或多个字段名,而不根据索引名称
调用方法如下:
err := engine.Sync(new(User), new(Group))
2. Sync2
Sync2对Sync进行了改进,目前推荐使用Sync2。Sync2函数将进行如下的同步操作:
* 自动检测和创建表,这个检测是根据表的名字 * 自动检测和新增表中的字段,这个检测是根据字段名,同时对表中多余的字段给出警告信息 * 自动检测,创建和删除索引和唯一索引,这个检测是根据索引的一个或多个字段名,而不根据索引名称。因此这里需要注意,如果在一个有大量数据的表中引入新的索引,数据库可能需要一定的时间来建立索引。 * 自动转换varchar字段类型到text字段类型,自动警告其它字段类型在模型和数据库之间不一致的情况。 * 自动警告字段的默认值,是否为空信息在模型和数据库之间不匹配的情况 以上这些警告信息需要将`engine.ShowWarn` 设置为 `true` 才会显示。
调用方法和Sync一样:
err := engine.Sync2(new(User), new(Group))
下一章:Xorm 导出导入SQL
Xorm 导出导入 SQL:如果需要在程序中 Dump 数据库的结构和数据可以调用:engine.DumpAll(w io.Writer)或者engine.DumpAllToFile(fpath string)。DumpAll 方法接收一个 ...
AI 中文社