2012-07-24 3 views
0

고급 MySQL에 익숙하지 않지만 시간을 구현하는 가장 좋은 방법이 무엇인지 궁금합니다. 아이폰 앱을 가지고 테이블에 행을 잠그면 다시 쓰여질 내용이 생성됩니다. 그것은 단지 앞뒤로 토글하는 BOOL 컬럼 일뿐입니다. 문제는 내 앱이 충돌하거나 잠겨있는 동안 네트워크 연결이 끊어지면 잠금이 해제되지 않는다는 것입니다. 그 시간 내에 프로세스를 완료하지 못하면 행을 잠금 해제하기 위해 서버에 5 분 타이머 또는 무언가를 설정하려고합니다. 내 웹 API는 PHP로 작성되었습니다.잠긴 행에 대한 MySQL 타이머

MySQL에서이 작업을 수행 할 수 있습니까? 크론 작업을 만들어야합니까?

+0

어떻게이 행을 잠그고 있습니까? 세션이 종료되면 (연결 유실) 테이블 또는 행 레벨 잠금이 해제됩니다. –

+0

필자는 수동으로 열을 1 또는 0으로 설정하고 있습니다. 그러나 중간 사용자로 웹 서비스를 사용하므로 아이폰은 웹 서비스에서 연결이 끊어짐을 알 수 없습니다. – mkral

답변

1

주기적으로 잠금이있는 행을보고 만료 된 경우 잠금을 해제하는 서버 측 응용 프로그램 (cron 작업 가능)을 만들 수 있습니다. 만료되었는지 여부를 확인하려면 잠금이 적용될 때 현재 시간으로 설정된 datetime 열을 포함시켜야합니다.

또는 서버 측 앱을 건너 뛰고 iPhone 앱이 날짜 시간을 확인하도록하고 길어도 잠금을 재설정 할 수 있습니다.

두 경우 모두, 키는 datetime 열을 추가하고 잠금 시간을 알기 위해 활용합니다.

+0

두 번째 제안을 구현할 것입니다. 차라리 서버에서 실행되는 응용 프로그램이 적습니다. – mkral