【症状】
databseのexecuteSqlは、その実装をたどっていくと、DBHelper.executeSql()のなかで、rawQuery()を呼んでいますが、CREATE TABLEの場合、Cuesorを返せないということで、SQliteの部分でエラーになってしまいます(ログをみると????.cでのエラーと表示されていた)。
Androidのバージョンが2.1では問題なかったものが、3.2だと駄目なようです(いずれも実機テスト時に確認)、とりあえず、元のソースに、execSQLを使うexecSql()って関数をでっち上げてしのぎました。オープンソースでよかったです。
【再現方法】
詳細に検証はしていませんが、Sony Tablet Sでそういう現象になりました。
【要望】
execSQL()を使う版のAPIを追加してほしい。
【バージョン】
かくにんの仕方がわかりません。(;_;)
【その他】
PhoneGapもデータベース関連の動作が変だったので、jsWaffleに乗り換えました。ソースが丸見え(笑)で、かつ、見やすいので、いいですね。直接利用する以外にも、いろいろ勉強させていただいてます。m(_ _)m
ご報告ありがとうございます。
execSQL()を追加するのは、既存のソースへの変更が必要になりそうですので、
executeSql()の中で、SELECTがあるかどうか判別してAPIをコールするよう考慮しました。
http://d.aoikujira.com/jsWaffle/wiki/index.php?%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89