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은 시퀀스 번호가 열에 존재하지 않는 경우 시퀀스 번호를 삽입하도록 합니다.