gwt html5数据库SELECT WHERE AND

时间:2012-08-07 09:49:56

标签: sql database html5 gwt

iam使用http://code.google.com/p/gwt-mobile-webkit/downloads/list?q=label:API-Database 对于我的项目。 有两个文本框,用户可以键入两个单词。 在将这两个单词保存在html数据库之前,我正在查看这两个单词是否已经保存在数据库中。 问题是我不知道应该如何看起来正确的语法 SELECT * FROM words 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 怎么看起来像correkt查询? 还是有另一个问题? 请帮忙

1 个答案:

答案 0 :(得分:0)

您如何知道您的插页有效?

“SELECT * FROM words”会返回任何内容吗?

我使用http://code.google.com/p/gwt-mobile-webkit/wiki/DataServiceUserGuide所以我的语法略有不同,但使用chrome中的开发人员工具,您可以找到数据库并在其中运行sqlite命令。

这样做,这给了我一个错误

  

SELECT * from lesson where desc =(summer)

使用引号时

  

SELECT * from lesson where desc =(“summer”)   SELECT * from lesson其中desc =“summer”

您可能需要在代码中将其转义...

"SELECT * FROM words WHERE word1=(\"?\") AND word2=(\"?\")"