복합 기본 키가 (id_a, id_b)
인 데이터베이스 테이블이 있습니다. 그건 그들이 실제로 부르는 것이 아니지만이 질문에 대해 단순화하고 있습니다. id_a
은 외래 키이고 id_b
은 정수로, "시퀀스 번호"라고 말합니다. id_b
auto_incrementing은 InnoDB 스토리지 엔진에 허용되지 않기 때문에 (복합 키의 첫 번째 필드가 아니기 때문에) 만들 수는 없습니다.SQLAlchemy가있는 다중 열 키
id_a id_b
----------------
1 1
1 2
2 1
2 2
2 3
및 (id_a=1
)과 행을 삽입의 결과가 자동 id_b=3
설정한다 : 이러한 개체 id_a
로 "분류"할 수 있도록, 예를 들면, 그래서 그것을 확인하고자
. 다른 id_a
동시 삽입이 완전히 허용되어야 할 때 전체 테이블을 잠글 필요가 없으므로 데이터베이스 잠금을 사용하지 않는 것이 좋습니다.
SQLAlchemy (ORM 사용)를 통해 Python을 통해이 데이터베이스에 액세스하고 있습니다.이 질문은 클라이언트 측 (순수 MySQL)과 관련하여 까다로울 수 있습니다.