Sem descrição

xormplus a6a3da0cc2 Merge branch 'master' of https://github.com/xormplus/xorm há 10 anos atrás
test 72b4bdf062 格式化 há 10 anos atrás
.gitignore 52a602da39 Initial commit há 10 anos atrás
LICENSE 52a602da39 Initial commit há 10 anos atrás
README.md 18fb8caf90 Update README.md há 10 anos atrás
cover.out c93a5bbd96 初始化 há 10 anos atrás
engine.go c93a5bbd96 初始化 há 10 anos atrás
engineplus.go c93a5bbd96 初始化 há 10 anos atrás
error.go c93a5bbd96 初始化 há 10 anos atrás
goracle_driver.go c93a5bbd96 初始化 há 10 anos atrás
helpers.go c93a5bbd96 初始化 há 10 anos atrás
helpersplus.go c93a5bbd96 初始化 há 10 anos atrás
logger.go c93a5bbd96 初始化 há 10 anos atrás
lru_cacher.go c93a5bbd96 初始化 há 10 anos atrás
memroy_store.go c93a5bbd96 初始化 há 10 anos atrás
mssql_dialect.go c93a5bbd96 初始化 há 10 anos atrás
mymysql_driver.go c93a5bbd96 初始化 há 10 anos atrás
mysql_dialect.go c93a5bbd96 初始化 há 10 anos atrás
mysql_driver.go c93a5bbd96 初始化 há 10 anos atrás
oci8_driver.go c93a5bbd96 初始化 há 10 anos atrás
odbc_driver.go c93a5bbd96 初始化 há 10 anos atrás
oracle_dialect.go c93a5bbd96 初始化 há 10 anos atrás
pg_reserved.txt c93a5bbd96 初始化 há 10 anos atrás
postgres_dialect.go c93a5bbd96 初始化 há 10 anos atrás
pq_driver.go c93a5bbd96 初始化 há 10 anos atrás
processors.go c93a5bbd96 初始化 há 10 anos atrás
rows.go c93a5bbd96 初始化 há 10 anos atrás
session.go c93a5bbd96 初始化 há 10 anos atrás
sessionplus.go c93a5bbd96 初始化 há 10 anos atrás
sqlite3_dialect.go c93a5bbd96 初始化 há 10 anos atrás
sqlite3_driver.go c93a5bbd96 初始化 há 10 anos atrás
statement.go c93a5bbd96 初始化 há 10 anos atrás
syslogger.go c93a5bbd96 初始化 há 10 anos atrás
xorm.go c93a5bbd96 初始化 há 10 anos atrás
xormplus.go c93a5bbd96 初始化 há 10 anos atrás

README.md

xorm

优化xorm的查询API,并提供类似ibatis的配置文件及动态SQL功能

支持类似这样的链式操作

sql:="select id,title,createdatetime,content from article where id = ?"
rows, err := db.Sql(sql, 2).FindAll().Json()

id := db.Sql(sql, 2).FindAll().Result[0]["id"]
title := db.Sql(sql, 2).FindAll().Result[0]["title"]
createdatetime := db.Sql(sql, 2).FindAll().Result[0]["createdatetime"]
content := db.Sql(sql, 2).FindAll().Result[0]["content"]

也支持SqlMap配置,配置文件样例

<sqlMap>
	<sql id="selectAllArticle">
		select id,title,createdatetime,content 
		from article where id in (?1,?2)
	</sql>
	<sql id="selectStudentById1">
		select * from article where id=?id
	</sql>
</sqlMap>
paramMap := map[string]interface{}{"1": 2, "2": 5}
rows, err := db.SqlMapClient("selectAllArticle", &paramMap).FindAllByParamMap().Xml()

同时提供动态SQL支持,使用pongo2模板引擎


例如配置文件名:select.example.stpl
配置样例内容如下:

select id,userid,title,createdatetime,content 
from article where  
{% if count>1%}
id=?id
{% else%}
userid=?userid
{% endif %}
paramMap := map[string]interface{}{"id": 2, "userid": 3, "count": 1}
rows, err := db.SqlTemplateClient("select.example.stpl", paramMap).FindAllByParamMap().Json()