저는 최종 프로젝트를 위해 음식 배달 시스템을 사용하고 있습니다. 데이터베이스의 경우 레코드를 영구적으로 삭제하는 대신 더 이상 사용되지 않는 레코드를 숨겨야합니다. 예를 들어, 판매자가 특정 식사를 판매하기를 원하지 않는다면 식사를 비활성화 할 수 있지만 여전히 데이터베이스에서 사용할 수있는 식사의 기록은 유지할 수 있습니다. PHP와 SQL을 사용하여이 작업을 수행해야합니다. 누군가가 나에게 이것을 달성하는 방법에 대한 아이디어를 줄 수 있습니까? 미리 감사드립니다.PHP와 SQL을 사용하여 더 이상 사용하지 않는 레코드를 숨기려면
2
A
답변
6
당신이 말하는 기능은 부드러운 삭제 인 입니다. 소프트 삭제에서 실제로 레코드 자체를 제거하지 않고도 레코드가 논리적으로 데이터베이스 테이블에서 제거됩니다.
소프트 삭제를 구현하는 일반적인 방법 중 하나는 열이 소프트 삭제되었는지 여부를 추적하는 열을 추가하는 것입니다. 이 목적으로 TINYINT(1)
유형을 사용할 수 있습니다.
귀하의 테이블 작성 문은 다음과 같을 것이다 :
SELECT *
FROM yourTable
WHERE deleted <> 1
을 그리고 부드러운 또한 열을 삭제 갖는
CREATE TABLE yourTable (`deleted` TINYINT(1), `col1` varchar, ...)
논리적으로 삭제되지 않은 기록을 조회하려면, 당신은 사용할 수 있습니다 낡은 레코드를 삭제하는 것이 쉬운 경우에는이를 삭제할 수 있습니다.
2
엑스트라 deleted
열은 많은 경우에 훌륭한 옵션입니다. 그러나 당신은 매우 신중해야합니다. 항상을 확인하십시오. 어떤 경우에는 이것을 제어하기가 어려울 수 있습니다.
또 다른 좋은 선택은 동일한 구조의 "섀도우 테이블"이며, 삭제 프로세스를 변경하여 섀도우 테이블에 먼저 복사 한 다음 삭제하십시오. 이것은 원래 테이블을 사용하는 것이 안전하다는 것을 의미하지만, 모든 데이터에 대해 쿼리를 수행 할 수는 없습니다 (쉽게 할 수는 없지만 - UNION
이 도움이 될 수 있습니다)
관련 문제
- 1. 더 이상 사용하지 않는 값을 이동해야합니까?
- 2. 테이블을 더 이상 사용하지 않는 이유는 무엇입니까?
- 3. PHP와 SQL을 사용하여 페이지 매기기
- 4. javax.servlet.jsp.tagext.TagSupport를 더 이상 사용하지 않습니까?
- 5. 데이터베이스에서 더 이상 사용하지 않는 모든 색인을 PostgreSQL에 나열하십시오.
- 6. UserControl을 더 이상 사용하지 않는 방법 (Close 이벤트 없음)
- 7. 함수를 통해 더 이상 사용하지 않는 변수 삭제하기
- 8. 원시 메소드를 더 이상 사용되지 않거나 더 이상 사용하지 않는 것으로 표시 하시겠습니까?
- 9. 우리는 더 이상 더 이상 사용하지 않는 뷰를 dealloc 할 수 있습니까?
- 10. 네임 스페이스를 더 이상 사용하지 않는 방법이 있습니까?
- 11. RAML에서 REST 서비스를 더 이상 사용하지 않는 것으로 표시하는 방법
- 12. Ruby on Rails가 비계 방법을 더 이상 사용하지 않는 이유
- 13. 모바일 앱에서 더 이상 사용하지 않는 터치 작업
- 14. maven 프로젝트에서 하위 모듈을 더 이상 사용하지 않는 방법은 무엇입니까?
- 15. 아이폰 - 더 이상 사용하지 않는 기능 ... 아이폰을 추락시킬까요?
- 16. 더 이상 사용하지 않는 보석을 찾아서 제거하는 방법은 무엇입니까?
- 17. 브라우저는 더 이상 사용하지 않는 로컬 저장소를 어떻게 삭제합니까?
- 18. CppCheck 더 이상 사용되지 않는 기능을 사용하지 않음
- 19. MAMP : 더 이상 사용되지 않는 경고를 사용하지 않도록 설정하는 방법
- 20. 웹 워커를 더 이상 사용하지 않는 이유는 무엇입니까?
- 21. 오토 맵 Map.CreateMap은 더 이상 사용하지 않으십니까?
- 22. 더 이상 작동하지 않는 코드
- 23. 안드로이드는 tabactivity를 더 이상 사용하지 않을 것인가?
- 24. 더 이상 사용되지 않는 속성의 사용
- 25. 더 이상 사용되지 않는 Sensor.TYPE_ORIENTATION에 해당하는 대체품
- 26. php와 sql을 함께 사용하여 클래스의 함수
- 27. 오류가 SELECT는 PHP와 SQL을 사용하여 MariaDB
- 28. PHP와 SQL을 사용하여 하위 목록으로 만들기
- 29. 은 ejb3.0에서 더 이상 사용되지 않는 MessageDrivenBean입니까?
- 30. 더 이상 사용되지 않는 속성은 컴파일시에만 검사됩니까?
여러 가지 방법이 있지만 가장 간단한 방법은 데이터베이스에' 값으로 '사용 가능'또는 '사용 불가'를 지정합니다. –
항목이 사용 가능한지 여부를 나타내는 열을 사용하면 –
은 가져온 행에 조건문을 사용합니다. 그것이 뭔가라면, 뭔가를하십시오. 이것은 간단합니다. –