首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
Enjoy SQL 模板 问题,如何定义表名,数据库名,如何使用?
kevinzhaoyp
2019-11-08 15:44
如 dbname,和 tablename 怎么 定义?怎么使用,数据库是sqlserver
项目:
JFinal
评论区
doubuxingle
2019-11-08 15:54
一般情况下 直接简写成tablename ,这样使用默认的dbname=dbo。
回复
kevinzhaoyp
2019-11-08 15:57
@doubuxingle
多数据库,需要跨库查询 数据库名是 个变量
回复
kevinzhaoyp
2019-11-08 15:58
public static String sjjdList(String dbName, String zcbfid) {
return "select dgnd as id,''as pid,dgnd+'年度'as [text],dgnd from [" + dbName + "]..sjjd where zcbfid='" + zcbfid + "' group by dgnd " +
"union all " +
"select code,left(code,len(code)-3) as pcode,jdmc,dgnd from [" + dbName + "]..sjjd where zcbfid='"+ zcbfid +"' " +
"order by id";
}
之前 是这样写的,我想使用 Enjoy SQL 模板
回复
doubuxingle
2019-11-08 16:06
那你直接把dbName也当成变量传到模板里不就可以了
List list = Db.template('xxx',Kv.by('dbName','value1').set('zcbfid','value2')).find()
SQL:select * from [#(dbName)].[table] where zcbfid=#para(zcbfid)
大致就是这样,和传递的普通参数一样
回复
kevinzhaoyp
2019-11-08 16:17
@doubuxingle
可以,谢谢。Db.template('xxx',Kv.by('dbName','value1').set('zcbfid','value2')) 这个,如果是参数多怎么使用呀?
回复
kevinzhaoyp
2019-11-08 16:26
@doubuxingle
大概会使用了。谢谢。我是新手,刚开始学习。
回复
JFinal
2019-11-08 16:49
@kevinzhaoyp
稍微看一下文档就会用了,sql 模板只提供了 #para、#sql、#namespace 三个指令,可以搞定大部分问题
需要其它功能的时候,可以直接使用 enjoy 已有的功能,因为 sql 模板是 enjoy 引擎实现的,用上文档中介绍的 enjoy 用法即可:
https://www.jfinal.com/doc/6-1
注意文档中强调的:
立即掌握 90% 的用法,只需要记住一句话:JFinal 模板引擎表达式与 Java 是直接打通的
回复
jfinalyl
2020-06-19 11:03
Enjoy SQL模板写sql的怎么设置指令提示功能
回复
JFinal
2020-06-20 18:05
@jfinalyl
将 sql 模板文件命名为以 ".sql" 为后缀,开发工具会自动当其当成 sql, IDEA 这样的工具会有提示, eclipse 的 sql 插件也应该可以支持
回复
发送
我要反馈
热门反馈
扫码入社