繁体   English   中英

Android SQLite特定的表行删除

[英]Android SQLite specific table row deletion

我在Android设备上从我的SQLite数据库中删除特定用户时遇到了一些麻烦。 我做了一个简单的方法来删除一个表行,其中table.name等于第一个输入,table.surname等于第二个输入。

这是我的方法:

void deleteUser(db_operations opt, String name, String surname) {
    SQLiteDatabase sdb = opt.getWritableDatabase();
    if(validate(name, surname) == true) {
        name = name.replaceAll("\\s+",""); surname = surname.replaceAll("\\s+","");
        try {
            String DELETE_USER = "DELETE FROM " + tb_users.tb_name + " WHERE " + tb_users.name + "='" + name + "' AND " + tb_users.surname + "='" + surname + "'";
            sdb.execSQL(DELETE_USER);
            sdb.close();
            System.out.println("Deletion SUCCESS!");
        } catch (SQLException e) {
            System.out.println("Deletion FAILED!");
        }
    }
}

如果我执行DELETE FROM myTableName语句,则每个用户都从表中和我的ScrollView中删除,这是正常的,但如果我执行上述方法删除特定用户,则输出给出:

删除成功!

但是我的桌子还有记录。 该记录也保留在我的ScrollView列表中(使用LinearLayouts制作)。 该列表是动态构建的。 在我的SQLite执行开始之前,我已经检查过数据是否正常,看起来没问题。 我无法弄清楚为什么我的方法不起作用。 也许我错过了什么。

(代表作者提问)

我搞定了。 我发现我的验证方法一直在返回错误的输出(我在其中一个条件中输了一个错误),这就是为什么我的方法永远不会有机会执行。 感谢您提醒您使用日志。 能够追踪我的错字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM