问题标签 [scalaquery]

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 投票
1 回答
5531 浏览

scala - 如何使用 Slick 使用过滤器计算结果?

我面临一个我想简化的问题:(可以肯定,事实上我做错了)。

通缉

我想计算 id = 1 的用户数。在 SQL 语言中,假设它是这样的:

代码

我在“提升”形式中使用 Slick,所以这是我计算用户的一段代码:

实际上这里发生的是 Slick 别名 ScalaQuery,实际上是使用过滤器原因创建一个子查询,然后计算子请求的结果。

对于这样的查询,似乎开销很大。

0 投票
1 回答
773 浏览

scala - 在scalaquery中获取自动增量键

我想使用 scalaquery / slick 在代表 1:n 关系的 2 个表中插入行。

这些表定义如下:

我想在一个事务中插入 1:n 关系,但我不知道如何使用 ScalaQuery 来实现。在 JDBC 3 中,您可以从语句中获取生成的 ID ,但我看不到语句在 ScalaQuery API 中暴露的位置,我也看不到直接访问此信息的方法。

0 投票
1 回答
252 浏览

scala - 如何使用 ScalaQuery 按日期限制我的查询

我正在使用 Scalaquery,当我尝试根据日期字段限制查询时遇到了问题。我正在使用 Scala 2.9.2,ScalaQuery 2.9.1:0.10.0-M1 考虑以下代码:

此查询从不返回任何行。这是调用代码:

当我打印选择时,查询返回 0 行并生成以下 SQL:

我有测试日期的可用数据。如果我将 SQL 粘贴到 SQL 编辑器中并编辑日期以使其不是 JDBC 模板格式('27-Oct-2012'),则查询将返回预期的行。谁能告诉我我做错了什么?这不应该工作吗?

0 投票
1 回答
997 浏览

mysql - Scala Slick:使用直接嵌入的查询不起作用

我使用以下代码从 mysql 表中请求项目(Account 类只是表示数据库字段的案例类)

线

抛出以下异常:

可能是什么原因?我正在使用 Scala 2.10.0-RC1 和 Slick 0.11.2。

下面是 Account 类的样子:

0 投票
1 回答
3380 浏览

scala - 在 Slick 中描述可选字段

Slick DSL 允许两种方法在表中创建可选字段。

对于这个案例类:

您可以通过以下方式之一创建表映射:

两者有什么区别?一种是旧方式,另一种是新方式,还是它们有不同的用途?

我更喜欢将身份定义为可选作为 id 定义的一部分的第二种选择,因为它更加一致。

0 投票
1 回答
3477 浏览

scala - 如何将 AND 添加到连接 SLICK

我在 SLICK 中编写查询时遇到问题这是我对 MySql 数据库的请求:

如何使用 SLICK 编写它?确实缺乏有关文档中连接的信息。

更新 1 我尝试了所有组合,即使是这样的组合

在这种情况下,编译器给了我一个错误wrong number of parameters; expected = 2

所以我将 sv.parameter_id 替换为 _.parameter_id 现在它争论 Join 它说:

constructor cannot be instantiated to expected type; found : models.Join required: (models.Parameters.type, models.SensorValues.type)

我正在使用最新版本的 SLICK,但已弃用。我手动导入

import scala.slick.lifted.Join现在它看起来像是常规的 innerJoin,因为它使用 WHERE 而不是在 ON 之后放置和。

SQL 生成的购买查询:

select x2.id, x2.platform_id, x2.date, x3.x4, x3.x5, x3.x6, x7.x8, x7.x9, x7.x10, x7.x11 from (select x12.id as x4, x12.name as x5, x12.units as x6 from parameters x12) x3 left outer join (select x13.id as x8, x13.reading_id as x9, x13.parameter_id as x10, x13.value as x11 from sensorValues x13) x7 on x3.x4 = x7.x10, readings x2 where true and (x7.x9 = x2.id)

即使是在 ON 部分添加条件的情况下也会很好

但这从未发生过。

相反WHERE,我需要AND. 我应该用什么来提及这种情况,或者 slick 中没有任何功能?

0 投票
2 回答
166 浏览

database - scalaquery 中的不同开发/生产数据库

ScalaQuery 要求 (AFAIK) 在您的代码中使用提供程序特定的导入,例如:

我们正在尝试在开发模式中使用 H2,在生产中使用 MySQL。有没有办法做到这一点?

0 投票
1 回答
130 浏览

scala - Scalaquery在加入同一张表时生成无效的sql

我有一个查询需要左连接到同一个表上才能找到帐户的最新行。

这会生成以下 SQL

问题出在Subscription t2 left join Subscription t2. 这些表需要有不同的别名。

我通过将对象复制并粘贴到Subscriptions并将查询更改为

此查询生成有效的 SQL,但不太理想。

有没有解决的办法?如果它固定在 SLICK 中,那么将跳转到 scala 2.10。

0 投票
1 回答
158 浏览

scala - scalaquery 中为 SQLite 生成的不受支持的 length() 函数

当尝试使用 scalaquery 检索 SQLite 数据库中文本列的长度时,它会生成错误的 SQL。我明白了:

当查询真的应该是

for我用于获取此查询的comp 是

我拥有的表定义是

似乎 scalaquery 只是生成了错误的length()函数,但我找不到代码中发生这种情况的位置,也没有在 Internet 上找到任何关于此的内容。

0 投票
1 回答
949 浏览

scala - 这是如何“类型不匹配”?

相关代码:

我也试过

最终目标是我希望所有选定的列都转换为具有命名访问器的对象,而不是元组。

更新:

这是问题的要点(从上面的代码略微简化,并通过仅使用 Int 消除了任何 String/java.lang.String “混淆”。)