Я пытаюсь создать функцию JS, которая подсчитывает строки в таблице SQLite.
function countRows(){
db.transaction(function (tx){
tx.executeSql('SELECT id FROM table', [], function (tx, results) {
var len = results.rows.length;
alert(len);
});
});
}
Приведенный выше код отображает предупреждение с номерами строк в таблице. Однако я хотел бы создать функцию, которая бы возвращала число вместо отображения окна с предупреждением.
Я пытался:
function countRows(){
db.transaction(function (tx){
tx.executeSql('SELECT id FROM table', [], function (tx, results) {
var len = results.rows.length;
return len;
});
});
}
А потом:
var number = countRows();
alert (number); // returns "undefined"
Приведенный выше пример возвращает "undefined", тогда как параллельный пример работает нормально:
function count(){
return 3;
}
var number = count();
alert (number); // returns 3
Я хочу присвоить номер переменной, чтобы я мог затем выполнить другой SQL-запрос, подсчитать строки в другой таблице и сравнить два результата.
В PHP это будет:
$sql1 = mysql_query('SELECT COUNT(*) FROM table1');
$rows1 = mysql_result($sql1, 0);
$sql2 = mysql_query('SELECT COUNT(*) FROM table2');
$rows2 = mysql_result($sql2, 0);
if ($row1>$row2){}