0

私のプロジェクトではhttp://code.google.com/p/gwt-mobile-webkit/downloads/list?q=label:APIデータベースを使用しています。2 つのテキスト ボックスがあり、ユーザーは 2 つの単語を入力できます。これらの 2 つの単語が html データベースに保存される前に、保存されたデータベースにこれらの 2 つの単語が既にあるかどうかを調べています。問題は、SELECT * FROM 単語 WHERE word1=value1 AND word2=value2 の正しい構文のように見える方法がわからないことです。

final String word1 = view.getWord1TextBox().getValue();
final String word2 = view.getWord2TextBox().getValue();
if(Database.isSupported()){
         Database db = Database.openDatabase("Words", "1.0", "Word App", 10000);
         db.transaction(new TransactionCallback() {
                public void onTransactionStart(SQLTransaction tx) {
                    tx.executeSql("SELECT * FROM words WHERE word1=(?) AND word2=(?)", new Object[]{word1, word2}, new StatementCallback<JavaScriptObject>() {
                        public void onSuccess(SQLTransaction transaction, SQLResultSet<JavaScriptObject> resultSet) {
                             System.out.println(" count of rows : "+ resultSet.getRowsAffected());
                        }

                        public boolean onFailure(SQLTransaction transaction,SQLError error) {


                            return false;
                        }
                    });
                }

                public void onTransactionSuccess() {

                }

                public void onTransactionFailure(SQLError error) {
                    //setTextMessageLabel("Could not open database", label );
                }
            });
    }

resultSet.getRowsAffected() は毎回 = 0 です。正しいクエリはどのように見えるでしょうか? または別の問題がありますか?助けてください

4

1 に答える 1

0

インサートが機能したことをどのように確認しますか?

「SELECT * FROM words」は何かを返しますか?

http://code.google.com/p/gwt-mobile-webkit/wiki/DataServiceUserGuideを使用しているため、構文は少し異なりますが、クロムの開発者ツールを使用すると、データベースを見つけて sqlite コマンドを実行できます。

それを行うと、これは私にエラーを与えます

SELECT * from レッスン where desc = (夏)

引用符の使用中

SELECT * from レッスン where desc = ("夏") SELECT * from レッスン where desc = "夏"

コードでエスケープする必要があるかもしれません...

"SELECT * FROM words WHERE word1=(\"?\") AND word2=(\"?\")"
于 2012-08-07T22:24:01.650 に答える