Squeryl ORM无法使用Long,bigints和运算符?

时间:2012-07-10 03:53:26

标签: scala squeryl

Squeryl今天没有。我有一个令人讨厌的错误,到目前为止我没有成功。

Postgres引发的错误:

Caused by: java.lang.RuntimeException: Exception while executing statement : ERR
OR: operator does not exist: character varying = bigint
  Hint: No operator matches the given name and argument type(s). You might need
to add explicit type casts.
  Position: 722

不确定为什么抛出此错误,除了我将Scala Long存储在bigint字段中然后对其运行查询。我做错了吗?

所有这些都在Squeryl ORM上运行,所以我90%确信我的类型是正确的。我的代码也会编译。

修改

这就是我用来查询的代码。不多......

from(DB.relays)(r =>
where((r.userId === userId))
select (r))

1 个答案:

答案 0 :(得分:1)

我是一个可怕的人。

花了将近两个小时的时间,但这一切都归结为有毒的数据库演变。

我不知道,我对它如何逃脱感到困惑,但userId列实际上是一个text字段。在我开始打印表结构之前,我没有找到错误。

我很惊讶它是如何在没有被发现的情况下进入那里的,因为我输入的记录像疯了一样没有错误。