2

squerylを使用して簡単なクエリを実行しようとしています。しかし、それは機能しません!コードはコンパイルされますが、クエリは結果を返しませんが、そうする必要があります。空白の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によると、動作するはずですか?!

どんな助けでも大歓迎です。

4

1 に答える 1

2

これにより、非推奨の警告が表示されるはずです。

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))

私はそれを試したところ、正しくコンパイルされて実行されます。

于 2011-06-14T14:49:40.563 に答える