Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách tạo khóa chính của bảng MySQL tự động tăng với một số tiền tố

Nếu bạn thực sự cần điều này, bạn có thể đạt được mục tiêu của mình với sự trợ giúp của bảng riêng biệt để sắp xếp trình tự (nếu bạn không phiền) và một trình kích hoạt.

Bảng

CREATE TABLE table1_seq
(
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
CREATE TABLE table1
(
  id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0', name VARCHAR(30)
);

Bây giờ là trình kích hoạt

DELIMITER $$
CREATE TRIGGER tg_table1_insert
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
  INSERT INTO table1_seq VALUES (NULL);
  SET NEW.id = CONCAT('LHPL', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
DELIMITER ;

Sau đó, bạn chỉ cần chèn các hàng vào bảng1

INSERT INTO Table1 (name) 
VALUES ('Jhon'), ('Mark');

Và bạn sẽ có

|      ID | NAME |
------------------
| LHPL001 | Jhon |
| LHPL002 | Mark |

Đây là SQLFiddle bản demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để thoát% khỏi truy vấn mysql python

  2. Cách thiết lập kết nối MySQL từ xa

  3. Sử dụng Python và MySQL trong Quy trình ETL:SQLAlchemy

  4. Chèn nhiều hàng với các câu lệnh được chuẩn bị sẵn PDO

  5. Người dùng hiển thị MySQL