iam使用http://code.google.com/p/gwt-mobile-webkit/downloads/list?q=label:API-数据库我的项目。有两个文本框,用户可以键入两个单词。在这两个单词被保存在html数据库中之前,我正在查看这两个词是否已经保存在数据库中。问题是我不知道正确的语法应该是什么样子从单词中选择*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()每次都为0correkt查询的外观应该如何?还是还有其他问题?请帮助
你怎么知道你的插入有效?
"SELECT*FROM words"是否返回任何内容?
我使用http://code.google.com/p/gwt-mobile-webkit/wiki/DataServiceUserGuide所以我的语法有点不同,但使用chrome中的开发工具,你可以找到数据库并在其中运行sqlite命令
这样做,这会给我一个错误
从课程中选择*,其中desc=(夏季)
而使用报价工作
从课程中选择*,其中desc=("summer")从desc="summer"的课程中选择*
您可能需要在代码中对其进行转义。。。
"SELECT * FROM words WHERE word1=("?") AND word2=("?")"