내 프로젝트에 채팅 대화를 삽입 한 SQLite DB가 있습니다. 따라서 은 마지막 5 분 이후 비활성화 된 대화 (삽입하지 않음)을 삭제하고 싶습니다. 이것을 달성하는 가장 좋은 방법은 무엇입니까? CountDownTimer
을 초기화하는 동안 DB에 각 항목을 삽입하고 새 항목이 삽입 될 때 재설정하는 방법을 생각했습니다. 좋은 접근인가?매 5 분마다 (채팅) SQLite 데이터베이스에서 비활성 항목 삭제
2
A
답변
0
5 분마다 데이터베이스를 확인하고 비활성 채팅을 삭제하는 서비스를 만들었습니다. 당분간, 그것은 나를 위해 작동합니다. 그러나 더 나은 접근 방법이 있다면 알려 주시면 제가 리팩토링 할 수 있도록하겠습니다.
-1
권장하지 않는 것이 좋습니다. here 그러나 몇 분마다 삭제 쿼리를 실행하여 필요없는 것을 삭제할 수 있습니다.
DELETE FROM MyTable WHERE datediff(now(), myTimestamp) >= 14;
또는 DB에 일반 텍스트가 너무 작은 공간을 차지하기 때문에 당신이 필요한 경우에만 선택합니다.
SELECT * FROM myTable WHERE timetampColumn>=date_sub(now(), interval 2 week);
+0
이것은 SQLite에서 작동하지 않습니다. –
+0
@ CL. 나는 OP가 SQLite가 이해하는 것으로 이것을 '변환'할 수있을 것이라고 확신한다. – Marius
이 테이블에 대한 스키마를 게시해야합니다 ... 도와 드릴까요? U가 어떻게하는지 알고 계십니다. – SMR
@SMR 방금 더 나은 접근 방법을 알고 싶습니다. DB 스키마와 어떤 관련이 있습니까? –
@ SeshuVinay, 어떤 변환이 비활성 또는 활성 상태인지 어떻게 다른지 알려주십시오. –