javascript - 如果数据 = 0,则不更新(执行)表。 (JavaScript/SQL)

标签 javascript sql sqlite cordova

我只希望在“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/

相关文章:

javascript - 在 Javascript 中读取请求 header

android - 为什么我的 Android SQLite 数据库突然损坏了?

android - 当我在 google play 商店更新时,如何确保用户保留他们的 SQLite 数据?

mysql - 根据另一个表中的值运行查询

sql - 具有可变种子的同一性

java - 根据 Android Intent ACTION_SEND 中的选择更改收件人电子邮件 ID

javascript - 无法在 react 导航堆栈中居中标题 - React-Native?

javascript - 使用 MongoDB 从 AJAX 调用接收 JSON

javascript - createObjectURL 移动浏览器支持要求 - "with URL prefixed as webkitURL"

SQL关系和查询