>데이터 베이스 >MySQL 튜토리얼 >기존 MySQL 테이블에 AUTO_INCREMENT 기능을 추가하는 방법은 무엇입니까?

기존 MySQL 테이블에 AUTO_INCREMENT 기능을 추가하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-31 01:42:16346검색

How to Add AUTO_INCREMENT Functionality to Existing MySQL Tables?

테이블 변경: MySQL에 AUTOINCREMENT 기능 추가

MySQL 영역에서는 테이블 구조를 수정해야 하는 상황에 직면할 수 있습니다. 생성 후. 일반적인 작업 중 하나는 레코드가 테이블에 삽입될 때 순차 값을 자동으로 할당하는 AUTOINCREMENT 열을 추가하는 것입니다.

"itemid"라는 열이 포함된 "ALLITEMS"라는 테이블을 생성한 시나리오를 고려해 보겠습니다. 자동 증가가 필요하다는 것을 깨닫고 나면 다음과 같이 ALTER 문을 사용하려고 시도할 수 있습니다.

ALTER TABLE allitems
MODIFY itemid INT(10) UNSIGNED AUTOINCREMENT;

그러나 이 코드는 구문 오류를 발생시킵니다. 문제는 "MODIFY" 키워드의 사용에 있습니다. AUTOINCREMENT 열을 추가하려면 MySQL에서는 대신 "CHANGE" 키워드가 필요합니다.

CREATE TABLE ALLITEMS(
itemid INT(10) UNSIGNED,
itemname VARCHAR(50)
);

ALTER TABLE ALLITEMS CHANGE itemid itemid INT(10) AUTO_INCREMENT PRIMARY KEY;

DESC ALLITEMS;

이 수정된 코드를 실행하면 "itemid" 열은 AUTO_INCREMENT 열이 되고 모든 새 레코드는 " ALLITEMS' 테이블은 순차적인 정수 값을 자동으로 수신합니다. AUTO_INCREMENT 열은 종종 고유 식별자로 사용된다는 점을 기억하십시오. 기본 키 기능을 보장하려면 AUTO_INCREMENT 열을 정의한 후 "PRIMARY KEY" 제약 조건을 추가하는 것이 좋습니다.

또한 MySQL은 AUTO_INCREMENT 시퀀스의 시작 값을 지정할 수 있는 "START WITH" 절을 제공합니다. 이는 기존 시퀀스를 계속해야 하거나 중복 값을 피해야 하는 경우 특히 유용합니다. 예를 들면 다음과 같습니다.

ALTER TABLE tbl AUTO_INCREMENT = 100;

이는 "tbl" 테이블에 대한 AUTO_INCREMENT 시퀀스의 시작 값을 100으로 설정합니다. 따라서 다음에 삽입되는 레코드의 "itemid"는 101입니다.

"CHANGE" 및 "START WITH"의 올바른 사용법을 이해하면 MySQL 테이블 구조를 효과적으로 관리하고 업데이트하여 특정 데이터베이스를 충족할 수 있습니다. 요구 사항.

위 내용은 기존 MySQL 테이블에 AUTO_INCREMENT 기능을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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