가능한 한 최선을 다해 설명하려고합니다. 내 DB에는 "상태"라는 필드가있는 "week"라는 행이 있습니다.
미래MYSQL은 특정 값이 필드에있을 수있는 횟수를 제한합니다.
활동
하나의 "활성"주 행이있을 수 있습니다 상태는 다음의 값을 지정할 수 있습니다. 미래와 완료는 여러 번 발생할 수 있습니다.
그렇다면 액티브에게 하나 이상의 행에서 발생할 수없는 고유 한 개별 값을 만드는 방법이 있습니까?
내가 할 수있는 유일한 방법은 PHP를 사용하여 행을 모두 활성으로 설정했는지 찾기 위해 PHP를 사용하여 모든 행을 읽고 루프를 작성한 다음 관리자에게 이전에 해당 값을 변경하도록 요청하는 것입니다. 다른 주를 활성으로 선택합니다.
순전히 기술적 인 방법으로이를 방지하려고하십니까? 그런 다음 다른 열 (예 : '활성', 트리거 또는 수식 또는 대체 값으로 계산 될 수 있음)과 고유 한 색인을 추가해야합니다. 두 행을 "1"로 설정하면 오류가 발생합니다. 그러나 이는 사용자가 데이터베이스의 값을 직접 편집 할 수있는 경우에만 필요합니다. 어쨌든 사용자가 PHP를 사용하여 값을 편집하는 경우, 다른 행을 활성으로 설정하기 전에 (또는 수행하는 동안) 수행 할 모든 유형의 확인 및 갱신을 수행 할 수 있습니다. – Solarflare
활성 레코드의 ID를 하나의 행만 포함하는 다른 테이블에 저장할 수 있습니다. 또는 행과 현재 날짜를 비교하여 상태를 확인하십시오. – Mike
다른 열은 Solarflare로 생각할 수 있지만 행은 Active 및 Completed 또는 Active 및 Future 일 수 없습니다. – mediaguru