我只希望在“VacantSpaces”不为 0 时执行更新查询。换句话说,一旦特定事件不再有任何空间,“VacantSpaces”将为 0,因此用户应该无法加入,号码不会变为-1、-2等。
但是我不太确定该怎么做。
JavaScript 函数:
function updateEvent(title) {
db = window.openDatabase("SoccerEarth", "2.0", "SoccerEarthDB", 2 * 1024 * 1024);
db.transaction(function(tx) {
tx.executeSql("Update EventSoccer SET VacantSpaces = VacantSpaces -1, NoPeople = NoPeople + 1
WHERE Title = '" + title + "'",
[],
successJoin,
errorCB
);
});
function successJoin() {
navigator.notification.alert("You have joined the event!",
null,
"Information", "ok");
$( ":mobile-pagecontainer" ).pagecontainer( "change", "#page4" );
}
}
最佳答案
您是否尝试过像这样进行查询:
tx.executeSql("Update EventSoccer SET VacantSpaces = VacantSpaces -1, NoPeople = NoPeople + 1
WHERE Title = '" + title + "' AND VacantSpaces > 0",
[],
successJoin,
errorCB
);
注意:请使用您传递给函数的空数组 []
作为第二个参数来清理您的输入。
关于javascript - 如果数据 = 0,则不更新(执行)表。 (JavaScript/SQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36475644/