我字面上一直在試圖整天讓Firefox服從我的意志......如何獲取SELECT COUNT(*)的值?
我想:
int c = SELECT COUNT(*) FROM ...
我試過executeAsync({...});
,但我相信它是錯誤的範例,我立即要結果。 (和mozIStoragePendingStatement
導致錯誤)
var count = 0;
var conn = Services.storage.openDatabase(dbfile); // Will also create the file if it does not exist
let statement = conn.createStatement("SELECT COUNT(*) FROM edges LIMIT 42;");
console.log("columns: " + statement.columnCount); // prints "1";
console.log("col name:" + statement.getColumnName(0)); // is "COUNT(*)"
while (statement.executeStep())
count = statement.row.getResultByIndex(0); // "illegal value"
count = statement.row.getString(0); // "illegal value", too
count = statement.row.COUNT(*); // hahaha. still not working
count = statement.row[0]; // hahaha. "undefinded"
count = statement.row[1]; // hahaha. "undefinded"
}
statement.reset();
它主要工作,但我不明白的價值。所有的陳述(循環中的陳述)都有什麼問題。
感謝您的任何提示...
非常感謝。基本上它有兩個含義(對我來說):同步執行實際上已被棄用,並且爲了兼容性原因而保留......每個查詢結果都需要分成兩部分,一部分開始事務,另一部分觸發事件在完成的時候?! – helt
是的,就是這樣。 –