行が存在することがわかっているテーブルの行を削除しようとしています。私が試した:Android sqliteの行の削除の失敗
final String s = "DELETE from %s where Name = '%s'";
String sql = String.format(s, GetTableName(), sListName);
Cursor cr= GetUserDb().GetSQLiteDb().rawQuery(sql, null);
と私が試した:
String sWhere = String.format("Name = '%s'", sListName);
long lRowsUpdated = GetUserDb().GetSQLiteDb().delete(GetTableName(), sWhere, null);
** sWhere >> Name = 'groceries' **
** sql >> DELETE from Lists where Name = 'groceries' **
にはクラッシュやlogcat例外はありませんが、行はまだ削除されません。私は行方不明のものがありますか?たぶん私は別の場所にロックするか、マニフェストなどで特定のアクセス許可を設定する必要がありますか?
私の主キーはsListNameです。これは重要かどうかわからないTEXTです... – Mike6679
umm ... String.format()については確かですか?それは正しいステートメントを返しますか? String sql = String.format(s、new Object [] {GetTableName()、sListName});を試してください。 – mihail
@mihail - ありがとう。私はsql = DELETEをList = Nameから 'groceries'に変更しても行を削除せず、エラーもスローされないというあなたの提案を試みました。私はこの問題がまったく別のものだと思っています.... – Mike6679