我创建了一个Android应用程序,用户可以在其中添加,更新和删除数据库中的内容
在我的DataSource java文件中,我有这段代码:
public void addWebsite(String sitename, String username, String password) {
ContentValues values = new ContentValues();
values.put(MySQLiteHelper.COLUMN_URL, sitename);
values.put(MySQLiteHelper.COLUMN_USERNAME, username);
values.put(MySQLiteHelper.COLUMN_PASSWORD, password);
database.insert(MySQLiteHelper.TABLE_URL, null,values);
}
上面的代码生成了insert语句。
public void updateWebsite(WebsiteRecords website){
ContentValues values = new ContentValues();
values.put(MySQLiteHelper.COLUMN_URL, website.getSitename());
values.put(MySQLiteHelper.COLUMN_USERNAME, website.getUsername());
values.put(MySQLiteHelper.COLUMN_PASSWORD, website.getPassword());
database.update(MySQLiteHelper.TABLE_URL, values, MySQLiteHelper.COLUMN_ID + " = " + website.getId(), null);
}
以上代码显示更新声明
public void deleteWebsite(WebsiteRecords website) {
database.delete(MySQLiteHelper.TABLE_URL, MySQLiteHelper.COLUMN_ID + " = " + website.getId(), null);
}
最后,上面的代码用于删除语句。
我的问题是,我从登录中获取此用户名,并且我想要添加,更新和删除具有我从登录屏幕获得的用户名的内容。我在考虑制作
Cursor mCursor = database.rawQuery("INSERT INTO " + TABLE_URL + " VALUES('" + sitename + "', '" + username + "', '" + password + "') " WHERE loginname=?", new String [] {loginname});
或类似的东西,但我害怕它不会起作用。更新和删除也是如此。它只会添加,更新,删除,查看登录名为“iamcoolin3d”的文件。
任何人都可以帮我这个吗?
答案 0 :(得分:0)
该行:
Cursor mCursor = database.rawQuery("INSERT INTO " + TABLE_URL + " VALUES('" + sitename + "', '" + username + "', '" + password + "') " WHERE loginname=?", new String [] {loginname});
应该是:
Cursor mCursor = database.rawQuery("INSERT INTO " + TABLE_URL + " VALUES('" + sitename + "', '" + username + "', '" + password + "') WHERE loginname=?", new String [] {loginname});
在"
WHERE
答案 1 :(得分:0)
你的最后一行有问题,你必须把WHERE放在String中,否则它将无效。