>  기사  >  데이터 베이스  >  MySQL InnoDB의 기본 키가 아닌 열을 자동으로 증가시킬 수 있습니까?

MySQL InnoDB의 기본 키가 아닌 열을 자동으로 증가시킬 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-30 10:12:32345검색

Can a Non-Primary Key Column in MySQL InnoDB be Auto-Incremented?

MySQL InnoDB에서 기본 키가 아닌 키 자동 증가

MySQL InnoDB에서 기본 키가 아닌 열을 자동 증가시키는 것이 가능합니다. 이는 열에 인덱스를 생성하여 달성할 수 있습니다.

주어진 예에서 book_comments 테이블의 comment_id 열을 자동 증가시키려면 다음 단계를 따르십시오.

<code class="sql">CREATE TABLE book_comments (
    book_id mediumint,
    timestamp mediumint,
    user_id mediumint,
    vote_up smallint,
    vote_down smallint,
    comment text,
    comment_id mediumint,

    PRIMARY KEY (book_id, timestamp, user_id),
    INDEX id (comment_id)
);</code>

comment_id의 INDEX는 자동 증가 동작을 활성화하는 동시에 해당 인덱스가 InnoDB에 의해 유지되도록 보장합니다. ID 인덱스 이름은 필요에 따라 사용자 정의할 수 있습니다.

book_comments_votes 테이블의 경우 참조 무결성을 강화하고 중복을 피하기 위해 book_comments의 전체 기본 키를 외래 키로 사용하는 것이 좋습니다.

그 동안 comment_id를 기본 키로 만들고 book_id, timestamp 및 user_id의 고유 인덱스를 통해 무결성을 적용하는 것은 개념적으로 실행 가능하지만 일반적으로 각 테이블에 대해 고유한 기본 키를 갖는 것이 모범 사례로 간주됩니다. 이를 통해 일관되고 안정적인 데이터 검색 및 유지 관리가 보장됩니다.

위 내용은 MySQL InnoDB의 기본 키가 아닌 열을 자동으로 증가시킬 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.