首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只需从ClojureQL的disj生成SQL!conj!和更新!函数

只需从ClojureQL的disj生成SQL!conj!和更新!函数
EN

Stack Overflow用户
提问于 2011-09-07 22:14:00
回答 1查看 223关注 0票数 3

有没有办法直接从ClojureQL的disj生成sql查询!conj!和更新!函数,而不是直接执行它们?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-09 00:26:05

不,这些方法直接执行它们各自的预准备语句。它们都是非常基础的。对于conj!update-in!,请查看format名称空间中的conj-rowsupdate-vals函数中的internal调用:

代码语言:javascript
复制
 (format "INSERT INTO %s %s VALUES (%s)"
         (to-tablename table) columns template)

 (format "UPDATE %s SET %s WHERE %s"
         (to-tablename table) columns where)

对于disj!,ClojureQL使用clojure.java.jdbcdelete-rows函数,该函数包含:

代码语言:javascript
复制
  (format "DELETE FROM %s WHERE %s"
          (as-identifier table) where)

因此,基本上disj!可以使用java.jdbcwith-naming-strategywith-quoted-identifiers宏来表示表名,而其他的则不能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7335377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档