问题标签 [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.
scala - 如何使用 Slick 使用过滤器计算结果?
我面临一个我想简化的问题:(可以肯定,事实上我做错了)。
通缉
我想计算 id = 1 的用户数。在 SQL 语言中,假设它是这样的:
代码
我在“提升”形式中使用 Slick,所以这是我计算用户的一段代码:
实际上这里发生的是 Slick 别名 ScalaQuery,实际上是使用过滤器原因创建一个子查询,然后计算子请求的结果。
对于这样的查询,似乎开销很大。
scala - 在scalaquery中获取自动增量键
我想使用 scalaquery / slick 在代表 1:n 关系的 2 个表中插入行。
这些表定义如下:
我想在一个事务中插入 1:n 关系,但我不知道如何使用 ScalaQuery 来实现。在 JDBC 3 中,您可以从语句中获取生成的 ID ,但我看不到语句在 ScalaQuery API 中暴露的位置,我也看不到直接访问此信息的方法。
scala - 如何使用 ScalaQuery 按日期限制我的查询
我正在使用 Scalaquery,当我尝试根据日期字段限制查询时遇到了问题。我正在使用 Scala 2.9.2,ScalaQuery 2.9.1:0.10.0-M1 考虑以下代码:
此查询从不返回任何行。这是调用代码:
当我打印选择时,查询返回 0 行并生成以下 SQL:
我有测试日期的可用数据。如果我将 SQL 粘贴到 SQL 编辑器中并编辑日期以使其不是 JDBC 模板格式('27-Oct-2012'),则查询将返回预期的行。谁能告诉我我做错了什么?这不应该工作吗?
mysql - Scala Slick:使用直接嵌入的查询不起作用
我使用以下代码从 mysql 表中请求项目(Account 类只是表示数据库字段的案例类)
线
抛出以下异常:
可能是什么原因?我正在使用 Scala 2.10.0-RC1 和 Slick 0.11.2。
下面是 Account 类的样子:
scala - 在 Slick 中描述可选字段
Slick DSL 允许两种方法在表中创建可选字段。
对于这个案例类:
您可以通过以下方式之一创建表映射:
和
两者有什么区别?一种是旧方式,另一种是新方式,还是它们有不同的用途?
我更喜欢将身份定义为可选作为 id 定义的一部分的第二种选择,因为它更加一致。
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 中没有任何功能?
database - scalaquery 中的不同开发/生产数据库
ScalaQuery 要求 (AFAIK) 在您的代码中使用提供程序特定的导入,例如:
我们正在尝试在开发模式中使用 H2,在生产中使用 MySQL。有没有办法做到这一点?
scala - Scalaquery在加入同一张表时生成无效的sql
我有一个查询需要左连接到同一个表上才能找到帐户的最新行。
这会生成以下 SQL
问题出在Subscription t2 left join Subscription t2
. 这些表需要有不同的别名。
我通过将对象复制并粘贴到Subscriptions
并将查询更改为
此查询生成有效的 SQL,但不太理想。
有没有解决的办法?如果它固定在 SLICK 中,那么将跳转到 scala 2.10。
scala - scalaquery 中为 SQLite 生成的不受支持的 length() 函数
当尝试使用 scalaquery 检索 SQLite 数据库中文本列的长度时,它会生成错误的 SQL。我明白了:
当查询真的应该是
for
我用于获取此查询的comp 是
我拥有的表定义是
似乎 scalaquery 只是生成了错误的length()
函数,但我找不到代码中发生这种情况的位置,也没有在 Internet 上找到任何关于此的内容。
scala - 这是如何“类型不匹配”?
相关代码:
我也试过
最终目标是我希望所有选定的列都转换为具有命名访问器的对象,而不是元组。
更新:
这是问题的要点(从上面的代码略微简化,并通过仅使用 Int 消除了任何 String/java.lang.String “混淆”。)