programing

django - MySQL 데이터베이스에 저장되지 않은 레코드이지만 AutoIncrement가 증가합니다.

starjava 2023. 9. 4. 19:28
반응형

django - MySQL 데이터베이스에 저장되지 않은 레코드이지만 AutoIncrement가 증가합니다.

저는 여기서 이상한 사람과 마주하고 있습니다.

사용 중django내부에docker컨테이너.시스템이 일부 레코드를 저장하려고 할 때(대부분 정상적으로 작동합니다!) 해당 레코드는 데이터베이스에 저장되지 않습니다.

디버거에서 프로세스를 보면 django 객체가 저장되고 데이터베이스에서 ID를 얻으며 django 월드 안에서는 모든 것이 정상으로 보입니다.

하지만 그 기록은 데이터베이스에 절대 나타나지 않습니다!더 이상한 것은:표의 메타 옵션을 보면 생성되어야 하는 레코드당AutoIncrement증가합니다.데이터베이스는 기록에 대해 알고 있지만 기록은 저장하지 않는 것 같습니다.

저는 제 윈도우 컴퓨터에서 시도해봤는데, 서버는 유닉스를 실행하고, 둘 다 같은 문제가 있습니다.

사용 중django==2.0.9그리고.mysqlclient==1.3.13에 연결MariaDB.

테이블 엔진을 전환할 때InnoDB로.MyISAM그러면 작동합니다.

재현적으로 그것은 발생합니다.django-axes테이블을 사용하지만 시스템의 다른 부분에서도 문제를 경험했습니다.전화는 다음을 통해 옵니다.django-restframework장고로.

솔직히 어디서부터 그 문제를 찾아야 할지 모르겠습니다.

  1. Windows 및 (서버의) UNIX에서 발생하며, 다른 개발자의 UNIX에서 작동합니다.

  2. 최근에 다운그레이드했습니다.mysqlclient효과 없음

  3. Google이 아무 말도 하지 않거나 올바른 질문을 하지 않습니다.

  4. MySQL 오류 로그가 침묵을 유지합니다.

  5. 저도 최신 버전을 시도했습니다.MariaDB이미지10.3.

좋아요, 제가 할 수 있는 일을 찾지 못한 채, 저는 이 명시적인 테이블의 데이터베이스 엔진을 다음으로 바꿨습니다.MyISAM이제 작동합니다.진짜 이상해요.

언급URL : https://stackoverflow.com/questions/52721687/django-records-not-saved-in-mysql-database-but-autoincrement-gets-increased

반응형