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

Ngừng sử dụng lại ID AUTO_INCREMENT của MySQL

Trong trường hợp này, có lẽ bạn không nên sử dụng chỉ số AUTO_INCREMENT ở những nơi có thể truy cập công cộng.

Lấy một trường khóa từ dữ liệu khác hoặc sử dụng một cơ chế khác để tạo id của bạn. Một cách mà tôi đã sử dụng trước đây, mặc dù bạn cần biết các tác động (có thể nghiêm trọng) về hiệu suất, là bảng "khóa" để theo dõi khóa được sử dụng gần đây nhất và tăng số đó.

Bằng cách đó, bạn có thể sử dụng bất kỳ loại khóa nào bạn muốn, thậm chí không phải số và tăng chúng bằng cách sử dụng thuật toán của riêng bạn.

Trước đây tôi đã sử dụng các phím chữ và số gồm 6 ký tự:

CREATE TABLE `TableKeys` (
  `table_name` VARCHAR(8) NOT NULL,
  `last_key` VARCHAR(6) NOT NULL,
  PRIMARY KEY (`table_name`)
);

SELECT * FROM `TableKeys`;

table_name | last_key
-----------+---------
users      | U00003A2
articles   | A000166D
products   | P000009G


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chuyển đổi dấu thời gian Unix thành ngày có thể đọc được của con người bằng MySQL

  2. Cách quản lý tình trạng phòng trống dựa trên số ngày hoặc số tháng làm việc

  3. Cách hàm OCTET_LENGTH () hoạt động trong MySQL

  4. Xuất dữ liệu từ Cơ sở dữ liệu MySQL

  5. Chọn tất cả các cột ngoại trừ một trong MySQL?