xorm使用小结
来源:互联网 发布:东方网络002175股吧 编辑:程序博客网 时间:2024/06/05 00:42
一.xorm简介
http://www.xorm.io/docs/(文档地址)
xorm是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。xorm的目标并不是让你完全不去学习SQL,我们认为SQL并不会为ORM所替代,但是ORM将可以解决绝大部分的简单SQL需求。xorm支持两种风格的混用。
二.使用小结
1.连接
func newXorm() {2.建表
engine, _ = xorm.NewEngine("mysql", "数据库名称:数据库连接密码@(数据库地址:3306)/数据库实例名称?charset=utf8")
tbMapper := core.NewPrefixMapper(core.SnakeMapper{}, "prefix_")
engine.SetTableMapper(tbMapper)
}
以config表为例
config表字段为:id,varname,value...
type Config struct {在定义结构体时字段名必须为大写,否则报错
Id int
Varname string
Value string
}
若config表结构中无Id作为自增主键,则可以通过 `orm:"pk"`来定义
3.CURD
(1)查询
newXorm()得到的config是一个结构数据
var config []Config
sql := "SELECT `varname`,`value` FROM `onfig`"
engine.Sql(sql).Find(&config)
newXorm()
data,_ := engine.QueryString("SELECT `varname`,`value` FROM `config`")得到的是一个[]map[string][string]类型的
newXorm()也可以通过其他的方法查询
var ret Config
engine.Where("id= ?", id).Get(&ret)
return ret.Value
var ret Configret.Id = id
has,_ := engine.Get(&ret)
(2)更新
newXorm()
var ret Configret.Varname= varname
_,err := engine.Update(&ret, &Config{Id:id)
官方文档中有一种方法是将。Id(id)放在前面,测试了一下报错,主键冲突。
newXorm()使用上述方法将需要更新的列写在Clos中,是因为 value有可能为0,此时直接用第一种方法是不生效的
var ret Config
ret.Value = value
engine.Cols("value").Update(&ret,Config{Id:id})
若需要更新的值为0或nil将会不做更新
(3)添加
var data Config(4)删除
data.Varname = varname
data.Value = value
newXorm()
_,err := engine.Insert(&data)
newXorm()
var ret Config
engine.Id(id).Delete(&ret)
阅读全文
0 0
- xorm使用小结
- xorm的基本使用
- Xorm的框架使用-准备工作
- go-xorm使用mssql的小实例
- 使用xorm将结构体转为sql文件
- xorm 的基本操作
- XORM 的复杂操作
- xorm常用编程方法总结
- [小结]svn基本使用小结
- 安装xorm工具出现第三方工具依赖
- xorm操作PostgreSQL数据库(增删改查实例)
- xorm根据数据库表生成对应的结构体
- DataGrid分页使用小结
- Ant使用小结
- treeview的使用小结
- TChart使用经验小结
- treeview的使用小结
- UrlReWriter 使用经验小结
- 朴素贝叶斯算法学习笔记(三)显示地域相关的用词
- 【暑假复习】【搜索】POJ3009:Curling 2.0
- Bzoj 2038 莫队算法
- 兼容ThinkPHP三种url模式的nginx rewrite
- 分页查询存储过程sql语句
- xorm使用小结
- EJB容器之远程调用
- 0/1背包问题
- Hive的配置
- 剑指offer_常用编程技巧总结
- 图论练习题
- BZOJ1827 奶牛大集会
- LeetCode周练Contest-36代码解析(C++)
- hdu2642