2017-09-02 77 views
1

我想和現在搜索一段時間沒有成功,刪除我的數據庫表中的特定行。無法刪除行比較我的SQLite數據庫中的日期Android

我想這樣做是因爲在DATE記錄值和nextday值之間進行比較的結果。

我認爲這將做的工作

String sql = "DELETE FROM Planned_expenses_table WHERE DATE <= date('now','+1 day')"; 
    SQLiteDatabase db = this.getWritableDatabase(); 

    db.execSQL(sql); 
    db.close(); 

但事實並非如此。

有什麼建議嗎?我目前正在使用模式"YYYY-MM-DD"存儲列DATE值,這與date()返回的值相同。 Logcat不顯示任何異常。
那麼這段代碼有什麼問題?先謝謝你。

編輯:我剛剛注意到,如果我在>改變<=該行被刪除,但這是很奇怪的,因爲保存的日期是老年人

+0

你還沒有告訴我們你想刪除哪些日期。 –

+0

@CL。我想從表格中刪除表格中DATE值比明天日期更早的每條記錄。無論如何,我設法解決它。 –

回答

0

我設法達到了希望的結果。

顯然我是以YYYY-M-D的形式保存日期,而不是寫在問題中的日期。這就是爲什麼訂單檢查<=是行爲不端。

-1

爲什麼不計算日期,然後通過實際值。

var tomorrow = DateTime.Now + TimeSpan.FromDays(1); 
string sql = $"DELETE FROM Planned_expenses_table WHERE DATE <= '{tomorrow.ToString("yyyy/MM/dd")}')"; 
SQLiteDatabase db = this.getWritableDatabase(); 

db.execSQL(sql); 
db.close(); 
+0

感謝您的快速響應,但android工作室似乎無法解決DateTime和TimeSpan,我如何導入它們? –