问题标签 [sqlkorma]

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.

0 投票
2 回答
878 浏览

jdbc - clojure sqlkorma 库:内存不足错误

我正在做我认为是相当简单的任务:使用 sqlkorma 库(http://sqlkorma.com)运行 sql 查询(超过大约 65K 行数据),并以某种方式对每一行进行转换,然后写入 CSV 文件。考虑到我有一台 8GB 的​​笔记本电脑,我真的不认为 65K 行有那么大,但我还假设一个 sql 结果集会被延迟获取,所以整个事情永远不会同时保存在内存中。所以当我最终得到这个堆栈跟踪时,我真的很惊讶:

据我从堆栈中可以看出,它没有超出查询代码(这意味着它根本没有达到我的转换/写入 CSV 代码)。如果重要的话,我的 sql 相当简单,基本上是SELECT * FROM my_table WHERE SOME_ID IS NOT NULL AND ROWNUM < 65000 ORDER BY some_id ASC. 这是oracle(解释上面的rownum),但我认为这很重要。

编辑:

代码示例:

0 投票
1 回答
80 浏览

postgresql - 如何让 Korma 与 Postgres FDW 一起工作?

使用 Postgres 的 FDW 命令进行 EXTENSION、USER MAPPING 和 CREATE FOREIGN TABLE 时如何使用 SQLKorma?

0 投票
1 回答
205 浏览

clojure - Korma 中的 with 子句是否会针对关系中的每个项目触发一个查询?

Korma 页面上的文档说,在实体下,

所以,如果我理解正确,如果一位老师有很多学生,并且我希望所有学生都嵌套在每个教师地图中,那么 Korma 将为每个教师生成一个 SQL 查询?

当我们拥有数以百万计的老师时,这不会影响表现吗?

0 投票
2 回答
785 浏览

postgresql - 使用 Korma 运行原始 sql 时,如何在准备好的语句中传递 clojure 向量?

我的查询类似于

我不断收到这个错误,Clojure 无法推断持久向量的 SQL 类型,使用 setObject 来告诉类型,现在如何将 setObject 与 CLojure 一起使用?

0 投票
1 回答
632 浏览

clojure - Korma中`oracle`函数的确切用法和clojure代码的含义?

我正在尝试使用 Korma 连接到 Oracle 数据库。首先,我尝试使用此代码并成功连接。

但我发现还有一个更方便的功能korma.db.oracle。所以代码看起来像这样简化:

但它失败了。它试图localhost. 当我检查oracle函数的结果时,我发现有一些奇怪的东西。

我检查了 Korma 源代码,oracle函数代码是:

简而言之,我的问题是:

  • 函数的具体用法是oracle什么?我错过了什么?
  • 函数代码oracle对我来说看起来很奇怪。谁能解释一下代码,尤其是参数部分...[{:keys [host .... ] :or {...} :as ...}]
0 投票
2 回答
245 浏览

postgresql - Clojure Korma 可以在 Postgres 中生成 WITH - RETURNING 查询吗?

我正在尝试从 Postgres 文档中重现此查询:

Korma 真的可以做到吗(当然,除了编写原始 SQL 之外)?我在文档中没有提到它。

谢谢...

0 投票
1 回答
389 浏览

clojure - 从 Korma 的表中不选择任何字段

我正在尝试跨多个表进行连接(三个表加上中间的连接表)。我认为 korma 正在懒惰地评估最后一次加入。我要做的是添加一个限制连接中第一个表的结果的条件,但我只对连接中最后一个表的字段感兴趣。

例如,假设我有clubs,peoplehobbies表,以及people-to-hobbies最后两个的连接表。每个俱乐部可以有很多人,每个人可以有很多爱好。

我正在尝试获取属于特定俱乐部的人的所有爱好的完整详细信息,但我不想要club表格中的任何字段。连接表意味着 korma 将创建两个查询,一个用于获取特定俱乐部中的所有人员,另一个用于通过people-to-hobbies连接表检索该人的爱好。

我的 korma 查询看起来像这样:

问题是我还没有指定我要从哪些字段中选择clubspeople,默认是选择*。我怎样才能不包含这些表中的字段?这是否可能,或者hobbies延迟加载的事实是否意味着 korma 必须在第一个查询中返回一些结果(这让我得到一个过滤的人员列表),所以当我稍后来询问它的爱好时,它有运行第二个查询所需的 ID?

0 投票
1 回答
755 浏览

postgresql - 在 SQL Korma 中使用非标准 postgres 运算符

Postgres 的一些复杂特性使用了不属于 SQL 标准的运算符。一个简单的例子是一组POSIX 正则表达式运算符;我需要它们包含一个利用单词边界的 where 子句表达式。

假设我想找到大小为 1 的小部件,其中 size 是一个包含 json 编码的整数列表的字符串。

样本数据:

这对于原始 SQL 来说是微不足道的:

但是使用 korma 变得非常困难。Korma 确实允许在 where 映射中使用谓词,但功能非常有限。一些不起作用的东西:

一个复杂的因素是其他条件在此之后动态添加到 where 映射中。因此,即使以下示例有效,它也不允许构建该地图:

那么,在 korma 中使用非标准运算符~是否可以与 where 映射一起执行此匹配?你会怎么做?最佳替代方案或解决方法?

0 投票
1 回答
379 浏览

sql - 使用 SQLKorma 获取语法异常:使用 SQL 执行查询失败

知道这个异常试图传达什么吗?我正在使用带有 Postgres 9.3 的 sqlKorma。我试图在表中一次插入多行,但出现语法错误。

现在,我的查询中的任何地方都没有“0”,也没有编写原始 SQL 来弄乱语法。

korma 文档也不是很清楚。

那是我的代码

注意:百分比是一个字典,其中 uuid 字符串作为键,值作为一些数字字符串

0 投票
1 回答
174 浏览

clojure - 被科尔马(clojure)忽略

我有以下代码:

它生成以下sql:

虽然我希望它包含对标签表的连接,但由于with应用了宏。显然情况并非如此,但执行它会在返回的单个记录中生成一个空的 :tags 键。

我在这里错过了什么吗?