- Androidプログラミング質問スレ revision42
483 :デフォルトの名無しさん[sage]:2014/04/29(火) 18:52:29.82 ID:eUwmvSCi - >>471-472
似たようなケースではまったことがある。 そのときは「+0」を入れるとうまくいくことがわかって 型の問題と推測して最終的にはCAST(? AS INTEGER)とすることで 対処したような記憶がある。 「*1」「+0」と「CAST」の違いはキャストが暗黙的か明示的かだと思う。 原因については、Androidのソースを追っていくと 確かSQLiteProgramのbindString()に行き着くはず。 (つまり、すべて文字列としてbindされていて、bindLong()などは使われていない。) SQLiteのCASTについては、http://www.sqlite.org/lang_expr.html のページの下のほうに説明があるよ。 構文はCAST(<expr> AS <type-name>)
|
|