GreaterThanequal(GTE)以下を含むSquerylクエリ(LTE)は間違っている/結果を与えます

StackOverflow https://stackoverflow.com/questions/6343347

質問

Squerylで簡単なクエリをしようとしています。しかし、それはうまくいきません!コードはコンパイルされますが、クエリは結果を返しませんが、そうする必要があります! Blank SQLで同じクエリが完全に機能します。 SELECT * FROM tablename WHERE position <= 83172924

val qryResult = from(DBName.tablename)(t => where(t.position === 83172924) select (t)) //works! but not what i want
val qryResult = from(DBName.tablename)(t => where(t.position <= 83172924) select (t)) //compile OK, no results
val qryResult = from(DBName.tablename)(t => where(t.position lte 83172924) select (t)) //compile ERROR

object DBName extends Schema {
  val tablename = table[FOO]("tablename")
}

class FOO(var position: Int) {
  def this() = this (0)
}

によると http://max-l.github.com/squeryl/functions.html うまくいくはずですか?!

どんな助けも感謝しています。

役に立ちましたか?

解決

これはあなたに非推奨警告を与えるべきでした:

qryResult = from(DBName.tablename)(t => where(t.position <= 83172924) select (t))

トラブルを引き起こしている非推奨の暗黙的変換があります、これを参照してください

https://groups.google.com/forum/#!searchin/squeryl/implicit$ 20boolean/squeryl/psuznda4bq4/ohmqs16yd_0j

マスターブランチから削除しました。

これは機能するはずです:

qryResult = from(DBName.tablename)(t => where(t.position lte 83172924) select (t))

私はそれを試したばかりで、それはコンパイルして正しく実行します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top