Java의 여러 스레드로 mysql 데이터베이스에 연결하고 있습니다. 경우에 따라 불일치이 표시되도록 스레드가 데이터베이스 테이블의 동일한 열을 읽고 업데이트하는 경우가 있습니다. Java에는 synchronized
키워드가있어 하나의 자원에 대한 액세스를 제한합니다. mysql 데이터베이스에 제한이 있습니까? 이러한 불일치가 발생하지 않도록하려면?mysql은 한 번에 하나의 액세스 만 보장합니다.
0
A
답변
2
적합한 격리 수준의 트랜잭션을 사용해야합니다.
간단한 예 :
BEGIN TRANSACTION
...
COMMIT
Mysql docs about transactions
Mysql docs about isolation levels.
0
버전 열을 사용하여 작업하면서 누군가가 데이터를 엉망으로 만들었는지 알 수 있습니다.
의미 : datetime 유형의 "updated"라는 열을 추가하고 업데이트 할 때마다 업데이트 된 것이 db의 행과 동일하다는 것을 확인합니다. 누군가가 자신의 레코드에서 작업 한 것을 모르는 경우입니다.
관련 문제
- 1. 한 번에 하나의 기능에 액세스!
- 2. MySQL은 한 번에 하나의 SQL 쿼리를 처리합니까?
- 3. 한 번에 하나의 타이머 만 활성화
- 4. 한 번에 하나의 버튼 만 선택
- 5. 한 번에 하나의 UIButton
- 6. OSGi에는 한 번에 하나의 서비스에만 액세스 할 수있는 방법이 있습니까?
- 7. cruisecontrol가 한 번에 하나의 프로젝트 만 빌드하는 방법
- 8. Visual Studio 2010에서 한 번에 하나의 파일 만 표시
- 9. jQuery 한 번에 하나의 요소 만 표시 하시겠습니까?
- 10. 안드로이드의 ListView에서 한 번에 하나의 확인란 만 선택하는 방법
- 11. Service Broker는 한 번에 하나의 메시지 만 수신합니다.
- 12. jQuery로 한 번에 하나의 플라이 아웃 만 표시하는 방법은 무엇입니까?
- 13. 한 번에 하나의 빌드 만 실행되도록 hudson을 구성하십시오.
- 14. 한 번에 하나의 편집기 만 사용할 수 있습니까? RCP
- 15. Mono WCF NetTcp 서비스는 한 번에 하나의 클라이언트 만 사용합니다.
- 16. iPhone - 한 번에 하나의 응용 프로그램 만 사용하는 이유
- 17. 한 번에 특정 행 집합 만 선택하십시오.
- 18. jQuery를 사용하여 한 번에 하나의 항목을 전환하십시오.
- 19. 한 번에 최대 하나의 프로세스가 실행되도록 보장
- 20. Google지도에서 한 번에 하나의 마커를 삭제하는 방법
- 21. 한 번에 하나의 자식 ANTLR AST 처리하기
- 22. 한 번에 하나의 MediaPlayer 인스턴스 재생
- 23. SharePoint 목록에서 한 번에 하나의 쿼리
- 24. CVS to SVN 한 번에 하나의 브랜치
- 25. Directory.GetFiles가 한 번에 하나의 파일을 반환합니까? (.NET)
- 26. 한 번에
- 27. MySQL은 내가 한 번
- 28. 한 번에 두 번 버튼으로 한 번에
- 29. oauth-php는 하나의 액세스 토큰 만 유지합니다.
- 30. 한 번에 하나씩 커밋합니다.
거래는 Innob에서만 가능합니다. MyIsam의 경우 테이블 잠금을 사용해야합니다. http://dev.mysql.com/doc/refman/5.0/fr/lock-tables.html – regilero
이미 사용 중입니다. 저장 프로 시저, 그들은 같은 기능을 procide 않는거야? 또한 10 개의 트랜잭션 또는 테이블 잠금이있는 경우 데이터 일관성을 제공합니까? 트랜잭션/잠금은 다른 스레드에 의해 개별적으로 실행됩니다. – Vilius