Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 시퀀스를 만드는 방법은 무엇입니까?

<시간/>

MySQL에서 시퀀스란 무엇입니까?

MySQL에서 시퀀스는 지정된 경우 1 또는 0부터 시작하여 오름차순으로 생성되는 정수 목록을 나타냅니다. 많은 응용 프로그램에는 특히 식별을 위해 고유 번호를 생성하는 데 사용되는 시퀀스가 ​​필요합니다.

예시

예를 들면 CRM의 고객 ID, HR의 직원 번호, 서비스 관리 시스템의 장비 번호가 있습니다.

MySQL에서 자동으로 시퀀스를 생성하려면 열에 대한 AUTO_INCREMENT 속성을 설정해야 합니다. 이것은 일반적으로 기본 키 열입니다.

규칙

AUTO_INCREMENT 속성을 사용하는 동안 다음 규칙을 따라야 합니다 -

모든 테이블에는 데이터 유형이 일반적으로 정수인 AUTO_INCREMENT 열이 하나만 있습니다.

AUTO_INCREMENT 열을 인덱싱해야 합니다. 이는 PRIMARYKEY 또는 UNIQUE 인덱스가 될 수 있음을 의미합니다.

AUTO_INCREMENT 열에는 NOT NULL 제약 조건이 있어야 합니다.

AUTO_INCREMENT 속성이 열로 설정되면 MySQL은 자동으로 해당 열에 NOT NULL 제약 조건을 추가합니다.

MySQL 시퀀스 생성

MySQL 시퀀스를 생성하는 예를 살펴보겠습니다 -

CREATE TABLE tableName (
   emp_no INT AUTO_INCREMENT PRIMARY KEY,
   first_name VARCHAR(50),
   last_name VARCHAR(50)
)

AUTO_INCREMENT 열이 어떻게 작동하는지 이해합시다 -

  • AUTO_INCREMENT 컬럼의 시작 값은 보통 1이다. 컬럼에 NULL 값을 삽입하거나 INSERT 문에서 값을 생략하면 1씩 증가한다.

  • 마지막으로 생성된 시퀀스 번호를 얻으려면 LAST_INSERT_ID() 함수를 사용할 수 있습니다.

  • 마지막으로 생성된 시퀀스는 세션 간에 고유합니다.

  • 다른 연결이 시퀀스 번호를 생성하는 경우 LAST_INSERT_ID() 함수를 사용하여 얻을 수 있습니다.

  • 새 행이 테이블에 삽입되고 시퀀스 열에 값이 지정되면 MySQL은 시퀀스 번호가 열에 존재하지 않는 경우 시퀀스 번호를 삽입하도록 합니다.