>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 접두사가 있는 자동 증가 기본 키를 어떻게 구현할 수 있습니까?

MySQL에서 접두사가 있는 자동 증가 기본 키를 어떻게 구현할 수 있습니까?

DDD
DDD원래의
2024-12-15 03:18:13518검색
How Can I Implement Auto-Incrementing Primary Keys with Prefixes in MySQL?
접두어로 자동 증가 달성

자동 증가 기능과 접두사가 모두 포함된 기본 키를 생성하려면 다음 단계를 따르세요.

1. 시퀀스 테이블 생성

시퀀스 생성기 역할을 할 별도의 테이블 생성:

2. 메인 테이블 생성

접두사를 사용하여 기본 키를 원하는 메인 테이블을 생성합니다:
CREATE TABLE my_sequence (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY);

3. 트리거 생성

트리거를 사용하여 기본 테이블에 삽입 시 접두사가 붙은 기본 키 값을 자동으로 생성합니다.
CREATE TABLE my_table (
  id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0',
  name VARCHAR(30)
);

4. 행 삽입

이제 기본 테이블에 행을 삽입하고 다음 접두어를 사용하여 자동 증가된 기본 키를 관찰할 수 있습니다.
DELIMITER $$
CREATE TRIGGER tg_my_table_insert
BEFORE INSERT ON my_table
FOR EACH ROW
BEGIN
  INSERT INTO my_sequence VALUES (NULL);
  SET NEW.id = CONCAT('LHPL', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
DELIMITER ;

예제 결과:

| 아이디 | 이름 |
INSERT INTO my_table (name)
VALUES ('Jhon'), ('Mark');

| LHPL001 | 존 || LHPL002 | 마크 |

참고:

이 접근 방식에는 별도의 시퀀스 테이블과 트리거를 사용하는 작업이 포함되는데, 이는 처리량이 많은 시나리오에 가장 효율적인 솔루션이 아닐 수 있습니다. 그러나 이는 MySQL에서 접두사가 있는 기본 키 자동 증가를 달성하는 간단한 방법입니다.

위 내용은 MySQL에서 접두사가 있는 자동 증가 기본 키를 어떻게 구현할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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