Java 在我的应用程序中编辑SQLite数据库不起作用

Java 在我的应用程序中编辑SQLite数据库不起作用,java,android,sqlite,Java,Android,Sqlite,我有一个应用程序,它只存储、显示、编辑和删除一个人的详细信息。我对android还是新手,我的应用程序可以存储、显示和删除数据。但编辑不起作用。我把代码搞乱了,当我编辑时,个人的名字只会在主页上更改,当我点击一个特定的项目时,它会打开一个名为PersonDetails的新活动,在这里,关于这个人的详细信息应该已经更改,但它们与以前一样。有人能帮我吗?这件事我已经绞尽脑汁两天了 这是我的存储库 在DBAdapter.java中: 替换: //Update a person public void

我有一个应用程序,它只存储、显示、编辑和删除一个人的详细信息。我对android还是新手,我的应用程序可以存储、显示和删除数据。但编辑不起作用。我把代码搞乱了,当我编辑时,个人的名字只会在主页上更改,当我点击一个特定的项目时,它会打开一个名为PersonDetails的新活动,在这里,关于这个人的详细信息应该已经更改,但它们与以前一样。有人能帮我吗?这件事我已经绞尽脑汁两天了

这是我的存储库 在DBAdapter.java中:

替换:

//Update a person
public void updateContact(long rowId, Person p){
    ContentValues args = new ContentValues();
    args.put(KEY_NAME, p.getName());
    args.put(KEY_PHONE, p.getPhone());
    args.put(KEY_ACCOUNT, p.getAccount());
    args.put(KEY_BANK, p.getBank());
    args.put(KEY_BANK_IFSC, p.getBankIfsc());
}
与:


请在这里分享相关的错误,而不是链接到您的完整代码。非常感谢,这是一个快速的回复!成功了。真不敢相信我漏掉了where条款。你能告诉我为什么它返回布尔值吗?很高兴它有用。选中此项:
    //Update a person
    public boolean updateContact(long rowId, Person p){
        ContentValues args = new ContentValues();
        args.put(KEY_NAME, p.getName());
        args.put(KEY_PHONE, p.getPhone());
        args.put(KEY_ACCOUNT, p.getAccount());
        args.put(KEY_BANK, p.getBank());
        args.put(KEY_BANK_IFSC, p.getBankIfsc());
        String where = KEY_NAME + "= '" + p.getName() + "'";
        return db.update(DATABASE_TABLE, args, where, null) != 0;
    }