MySQL에 자동 증분 열 추가

Shraddha Paghdar 2024년2월15일
MySQL에 자동 증분 열 추가

오늘 포스팅에서는 MySQL에서 auto-increment 컬럼을 추가하는 방법에 대해 알아보겠습니다.

MySQL에 자동 증분 열 추가

테이블을 만들 때 데이터베이스 내에 고유한 ID가 없을 수 있으므로 기본 키를 선택하는 데 문제가 있습니다. 이러한 문제를 해결하려면 각 레코드에 고유한 키를 수동으로 할당해야 하는데 이는 일반적으로 시간이 많이 걸리는 작업입니다.

결과적으로 추가된 각 새 레코드에 대해 숫자 기본 키 값을 생성하는 자동 증분 기능을 사용할 수 있습니다.

AUTO_INCREMENT 키워드는 자동 증가 기능을 위해 MySQL에서 사용됩니다. AUTO_INCREMENT는 1부터 시작하여 기본적으로 1씩 증가합니다.

이전 개념을 더 잘 이해하려면 다음 예제를 고려하십시오.

예 1: 새 테이블에 열을 추가합니다.

CREATE TABLE Employees(
    employee_id INT AUTO_INCREMENT PRIMARY KEY,
    first_Name VARCHAR(255),
    last_Name VARCHAR(255)
);

위의 예에서는 employee_id, first_Namelast_Name 필드가 있는 Employees 테이블을 작성했습니다. 이것은 AUTO_INCREMENT를 사용하여 employee_id를 자동 생성하고 데이터베이스의 기본 키로 만듭니다.

예 2: 기존 테이블의 열을 수정합니다.

ALTER TABLE `Employees`
    MODIFY COLUMN `employee_id` INT NOT NULL AUTO_INCREMENT;

이전 예에서 employee_id, first_Namelast_Name 필드가 있는 Employees 테이블이 이미 있습니다. AUTO_INCREMENT를 사용하여 employee_id 열의 기존 속성을 변경하여 employee_id를 생성합니다.

자동으로 삽입되므로 Employees 테이블에 새 레코드를 추가할 때 employee_id 값을 지정할 필요가 없습니다. 초기 레코드의 키는 1이고 이후 각 레코드의 키는 1씩 증가합니다.

INSERT INTO Employees(first_Name, last_Name)
VALUES
  ('John', 'Doe'),
  ('Smith', 'Will'),
  ('Tony', 'Stark');

아래와 같이 ALTER TABLE 명령을 사용하여 기본 시작 값을 수정할 수 있습니다.

ALTER TABLE Employees AUTO_INCREMENT = new_value;

다음과 같이 new_value를 기본 시작 값으로 설정할 수 있습니다.

ALTER TABLE Employees AUTO_INCREMENT = 1001;

이 경우 활용하려는 초기 값은 new_value입니다. AUTO_INCREMENT 간격 값을 1이 아닌 숫자로 수정하기 위해 MySQL 서버 변수 AUTO_INCREMENT에 새 간격 값을 제공합니다.

예제에서는 이 숫자를 1001로 설정했습니다.

MySQL과 호환되는 모든 브라우저에서 위의 코드 행을 실행하십시오. 다음과 같은 결과가 표시됩니다.

MySQL 자동 증분 열 추가

기본 시작 값을 수정한 후:

MySQL 업데이트 자동 증가 열

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

관련 문장 - MySQL Column