我在名爲'img_name'的SQLite表中有一列。該列中的數據示例:'/storage/extSdCard/img1.jpg /storage/extSdCard/img2.jpg /storage/extSdCard/pic3.jpg'。可以說我想刪除一張圖片。我會刪除相應的單詞(路徑)。唯一的問題是,我不知道如何從該列中刪除特定的單詞(路徑)。從我的表中刪除SQLite字符串值
任何幫助將不勝感激。
我在名爲'img_name'的SQLite表中有一列。該列中的數據示例:'/storage/extSdCard/img1.jpg /storage/extSdCard/img2.jpg /storage/extSdCard/pic3.jpg'。可以說我想刪除一張圖片。我會刪除相應的單詞(路徑)。唯一的問題是,我不知道如何從該列中刪除特定的單詞(路徑)。從我的表中刪除SQLite字符串值
任何幫助將不勝感激。
「刪除特定單詞」的方法是更新現有值。
因此,您將需要一個UPDATE
語句來選擇適當的行並更改列的值。新值將必須從舊值「計算」,就像您在編程語言中使用字符串函數一樣。
UPDATE column1
SET column1 = trim(replace(column1||' ','/storage/extSdCard/img2.jpg ',''))
WHERE column2 = 'example'
請注意,這僅是一個示例。所需的正確字符串操作可能會有所不同。你的問題沒有具體說明你的具體要求。 有關SQLite中字符串函數的詳細信息,請參閱SQLite文檔和Internet文章。
請注意,如果您沒有在每行的列中存儲多個值,則這不是必需的。
你應該把你的字符串,你需要刪除,然後將它傳遞到這一點ID:
public void deleteById(int id)
{
SQLiteDatabase db=getWritableDatabase();
String[] position =new String[]{id+""};
db.delete("img_name", "id=?", position);
}
注:「ID =」。用你的id列代替本聲明中的「id」