Xorm 执行原生 SQL
Xorm 支持原生 SQL 查询、添加、更新和删除等操作。
1. 执行SQL查询
Xorm 可以直接执行一个SQL查询,即Select命令。在Postgres中支持原始SQL语句中使用 ` 和 ? 符号。
sql := "select * from userinfo" results, err := engine.Query(sql)
当调用 Query 时,第一个返回值 results 为 []map[string][]byte 的形式。
Query 的参数也允许传入 *builder.Buidler 对象
// SELECT * FROM table results, err := engine.Query(builder.Select("*").From("table"))
另外,QueryInterface 和 Query 类似,但是返回值为 []map[string]interface{}。
QueryString 和 Query 类似,但是返回值为 []map[string]string。
2. 执行SQL命令
Xorm 也可以直接执行一个SQL命令,即执行Insert, Update, Delete 等操作。此时不管数据库是何种类型,都可以使用 ` 和 ? 符号。
sql = "update `userinfo` set username=? where id=?" res, err := engine.Exec(sql, "xiaolun", 1)
Xorm 支持事务处理。当使用事务处理时,需要创建Session对象。在进行事物处理时,可以混用ORM方法和RAW方法,如下代码所示:session := engine.NewSession()defer session ...