Aucune description

xormplus 031a2778d8 Update README.md il y a 11 ans
test 0b1e86c720 add test case il y a 11 ans
.gitignore 52a602da39 Initial commit il y a 11 ans
LICENSE 52a602da39 Initial commit il y a 11 ans
README.md 031a2778d8 Update README.md il y a 11 ans
cover.out c93a5bbd96 初始化 il y a 11 ans
engine.go c93a5bbd96 初始化 il y a 11 ans
engineplus.go c93a5bbd96 初始化 il y a 11 ans
error.go c93a5bbd96 初始化 il y a 11 ans
goracle_driver.go c93a5bbd96 初始化 il y a 11 ans
helpers.go c93a5bbd96 初始化 il y a 11 ans
helpersplus.go c93a5bbd96 初始化 il y a 11 ans
logger.go c93a5bbd96 初始化 il y a 11 ans
lru_cacher.go c93a5bbd96 初始化 il y a 11 ans
memroy_store.go c93a5bbd96 初始化 il y a 11 ans
mssql_dialect.go c93a5bbd96 初始化 il y a 11 ans
mymysql_driver.go c93a5bbd96 初始化 il y a 11 ans
mysql_dialect.go c93a5bbd96 初始化 il y a 11 ans
mysql_driver.go c93a5bbd96 初始化 il y a 11 ans
oci8_driver.go c93a5bbd96 初始化 il y a 11 ans
odbc_driver.go c93a5bbd96 初始化 il y a 11 ans
oracle_dialect.go c93a5bbd96 初始化 il y a 11 ans
pg_reserved.txt c93a5bbd96 初始化 il y a 11 ans
postgres_dialect.go c93a5bbd96 初始化 il y a 11 ans
pq_driver.go c93a5bbd96 初始化 il y a 11 ans
processors.go c93a5bbd96 初始化 il y a 11 ans
rows.go c93a5bbd96 初始化 il y a 11 ans
session.go c93a5bbd96 初始化 il y a 11 ans
sessionplus.go c93a5bbd96 初始化 il y a 11 ans
sqlite3_dialect.go c93a5bbd96 初始化 il y a 11 ans
sqlite3_driver.go c93a5bbd96 初始化 il y a 11 ans
statement.go c93a5bbd96 初始化 il y a 11 ans
syslogger.go c93a5bbd96 初始化 il y a 11 ans
xorm.go c93a5bbd96 初始化 il y a 11 ans
xormplus.go c93a5bbd96 初始化 il y a 11 ans

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"]

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

<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()