问题标签 [korma]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 在 Korma 中构建 WHERE 条件时,为什么 eval 可以在宏不起作用的地方工作
我正在尝试将 WHERE 条件动态添加到 Korma SQL 查询
我正在尝试动态构建对 korma 的where函数的调用。调用看起来像(where query (or (between :freq [100 200]) (between :freq [300 400]) ... ))
. 辅助函数make-conds列出了where函数的参数,例如:(or (between :freq [100 200]) ...
我尝试了以下方法来构建动态 where 调用。只有第一个,有eval
作品的。为什么?有一个更好的方法吗?
免责声明:我是 Clojure 和 Korma 的新手
sql - 用于将 REST 查询转换为数据库查询的库(或库)?
我想使用 clojure 构建一个带有 RESTful API 的 Web 服务,该 API 公开存储在关系数据库(本例中为 mysql)中的资源。我想使用一个库,给定 db 模式的规范,它将传入的请求转换为 db 查询或 korma 构造。
示例可能是:
GET /users?status=4
翻译成类似的东西:
SELECT * FROM `users` WHERE `status` = 4;
或者:
PUT /users/12
将会:
UPDATE `users` SET ... WHERE `id` = 12
有什么可以促进这一点的吗?
clojure - Korma 中的 with 子句是否会针对关系中的每个项目触发一个查询?
Korma 页面上的文档说,在实体下,
所以,如果我理解正确,如果一位老师有很多学生,并且我希望所有学生都嵌套在每个教师地图中,那么 Korma 将为每个教师生成一个 SQL 查询?
当我们拥有数以百万计的老师时,这不会影响表现吗?
sqlite - 使用 clojure 的 korma sqlite3 助手时,sqlite3 数据库的默认路径是什么?
使用 korma.db 时,defdb 可以使用 sqlite3 助手来建立与 sqlite3 数据库的连接。但是,我尝试将数据库放在项目目录的根目录、project.clj 旁边以及资源目录中,但是当我尝试使用 db 时,我得到:
使用 SQL 执行查询失败:SELECT "examples".* FROM "examples" :: [] SQLException: Message: [SQLITE_ERROR] SQL 错误或缺少数据库(没有这样的表:示例)
不用说我的 sqlite 数据库包含一个示例表。尝试执行此操作时,我在根项目目录上得到一个零字节的 sqlite.db 文件。
顺便说一句,我是从项目中的 lein repl 做的。
编辑:这是我失败时所做的:
postgresql - 如何使用 korma 在 postgresql 上插入 clj-time 日期时间对象
为了避免处理 java 的日期和时间对象,我使用了 clj-time。当我将它与 korma 的 sqlite3 助手一起使用时,它工作正常,但是当我做类似的事情时
我被告知系统无法推断对象类型。
我一直在四处寻找并询问,似乎 clojure.java.jdbc 支持一个名为 ISQLValue 的协议正是为了处理这样的事情。它用于扩展对象,以便它们可以在数据库中表示自己。然而,最新版本的 korma 使用 CJJ 的 0.2 版本。
每次需要将日期时间对象呈现给 psql 数据库时,是否有任何替代方法可以使用 clj-time.coerce/to-sql-date?
clojure - Korma中`oracle`函数的确切用法和clojure代码的含义?
我正在尝试使用 Korma 连接到 Oracle 数据库。首先,我尝试使用此代码并成功连接。
但我发现还有一个更方便的功能korma.db.oracle
。所以代码看起来像这样简化:
但它失败了。它试图localhost
. 当我检查oracle
函数的结果时,我发现有一些奇怪的东西。
我检查了 Korma 源代码,oracle
函数代码是:
简而言之,我的问题是:
- 函数的具体用法是
oracle
什么?我错过了什么? - 函数代码
oracle
对我来说看起来很奇怪。谁能解释一下代码,尤其是参数部分...[{:keys [host .... ] :or {...} :as ...}]
postgresql - Clojure Korma 可以在 Postgres 中生成 WITH - RETURNING 查询吗?
我正在尝试从 Postgres 文档中重现此查询:
Korma 真的可以做到吗(当然,除了编写原始 SQL 之外)?我在文档中没有提到它。
谢谢...
clojure - 从 Korma 的表中不选择任何字段
我正在尝试跨多个表进行连接(三个表加上中间的连接表)。我认为 korma 正在懒惰地评估最后一次加入。我要做的是添加一个限制连接中第一个表的结果的条件,但我只对连接中最后一个表的字段感兴趣。
例如,假设我有clubs
,people
和hobbies
表,以及people-to-hobbies
最后两个的连接表。每个俱乐部可以有很多人,每个人可以有很多爱好。
我正在尝试获取属于特定俱乐部的人的所有爱好的完整详细信息,但我不想要club
表格中的任何字段。连接表意味着 korma 将创建两个查询,一个用于获取特定俱乐部中的所有人员,另一个用于通过people-to-hobbies
连接表检索该人的爱好。
我的 korma 查询看起来像这样:
问题是我还没有指定我要从哪些字段中选择clubs
和people
,默认是选择*
。我怎样才能不包含这些表中的字段?这是否可能,或者hobbies
延迟加载的事实是否意味着 korma 必须在第一个查询中返回一些结果(这让我得到一个过滤的人员列表),所以当我稍后来询问它的爱好时,它有运行第二个查询所需的 ID?
clojure - 未选择有效的数据库连接
我正在使用 Clojure 开发一个 Web 项目,但遇到了以下问题。
我已经使用以下代码定义了与korma的数据库连接(ns foo.models.db)
在LightTable中,我可以使用 Instarepl 初始化服务器(use 'foo.repl) (start-server)
,并且数据库一切正常。
但是,当我尝试在控制台中使用 运行项目时lein ring server
,它会抛出一个异常告诉我
未选择有效的数据库连接
关于如何解决这个问题的任何想法?谢谢。
clojure - 如何将 JDBC 支持的数据库 (Informix) 添加到 korma
我需要采取哪些步骤才能让我的 Informix JDBC 驱动程序成为 korma 中受支持的数据库?Informix 有一个 jdbc 驱动程序,我已经用驱动程序的演示 Java 程序进行了测试。我的连接参数有效。
我已经开始了一个 Clojure 项目,但我一直在尝试什么,甚至出现错误,所以我可以从那里继续前进,更不用说连接了。
我的 Informix JDBC 驱动程序 3.50 在 maven 中
以下示例适用于 postgres。我想为 Informix 做这个。我想知道我必须做什么才能使用类似的东西为 Informix 数据库创建连接
我很确定我不能在上面的示例中只使用“informix”来代替 postgres,并且会发生奇迹。我只是对要创建什么定义感到困惑。任何帮助或指向示例的指针将不胜感激。