보조 열의 자동 증가와 함께 다중 열 자동 증가 기본 키 사용
공유 구조가 있는 데이터베이스에서 데이터 무결성을 유지하는 방법은 다음과 같습니다. 중대한. 전략의 일환으로 두 개의 열을 공동 기본 키로 사용하는 것을 고려하고 있습니다. 하나는 데이터베이스 식별자이고 다른 하나는 테이블 키입니다. 그러나 데이터베이스 식별자에 따라 테이블 키를 자동 증가하도록 설정하려고 합니다.
MySQL의 경우 사용 중인 스토리지 엔진에 따라 옵션이 있습니다. MyISAM을 사용하는 경우 다중 열 인덱스의 보조 열에 AUTO_INCREMENT를 지정하는 기능을 활용할 수 있습니다.
이 작동 방식을 이해하려면 다음 예를 고려하세요.
CREATE TABLE animals ( grp ENUM('fish','mammal','bird') NOT NULL, id MEDIUMINT NOT NULL AUTO_INCREMENT, name CHAR(30) NOT NULL, PRIMARY KEY (grp,id) ) ENGINE=MyISAM;
이 테이블에서 grp 및 id 열은 복합 기본 키를 형성합니다. id 열은 자동으로 증가하지만 해당 값 계산에서는 접두사(이 경우 grp 값)를 고려합니다.
이 개념을 시나리오에 적용:
CREATE TABLE mytable ( table_id MEDIUMINT NOT NULL AUTO_INCREMENT, database_id MEDIUMINT NOT NULL, other_column CHAR(30) NOT NULL, PRIMARY KEY (database_id,table_id) ) ENGINE=MyISAM;
샘플 데이터 삽입 :
INSERT INTO mytable (database_id, other_column) VALUES (1,'Foo'),(1,'Bar'),(2,'Baz'),(1,'Bam'),(2,'Zam'),(3,'Zoo');
쿼리하는 중 table:
SELECT * FROM mytable ORDER BY database_id,table_id;
이렇게 하면 각 그룹에 대해 자동으로 증가된 table_id 값과 함께 Database_id별로 그룹화된 결과가 반환됩니다.
위 내용은 MySQL에서 다중 열 자동 증가 기본 키를 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!