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

làm thế nào để sử dụng lại các khóa chính đã xóa trong mysql?

Sử dụng:

ALTER TABLE [your table name here] AUTO_INCREMENT = 1

... sẽ đặt lại giá trị auto_increment thành giá trị tiếp theo dựa trên giá trị hiện có cao nhất hiện có trong bảng. Điều đó có nghĩa là nó không thể được sử dụng để sửa các khoảng trống của nhiều hơn một.

Lý do duy nhất để làm điều này là dành cho những cái thẩm mỹ - cơ sở dữ liệu không quan tâm đến việc các bản ghi có tuần tự hay không, chỉ là chúng liên quan đến nhau một cách nhất quán. Không cần phải "sửa" các giá trị vì lợi ích của cơ sở dữ liệu.

Nếu bạn đang hiển thị id cho người dùng, đó là lý do tại sao bạn muốn chúng luôn tuần tự, thì tôi khuyên bạn nên thêm một khóa thay thế. Sử dụng khóa thay thế để hiển thị cho người dùng, do đó, các giá trị có thể được sắp xếp lại trình tự khi cần nhưng tính toàn vẹn tham chiếu không bị ảnh hưởng. Khóa thay thế trong trường hợp này sẽ là một cột số nguyên.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thay đổi bộ ký tự mặc định của MySQL thành UTF-8 trong my.cnf?

  2. Cách lặp qua tất cả các bảng trên cơ sở dữ liệu để cập nhật các cột

  3. Cách nhập cơ sở dữ liệu bằng phpMyAdmin

  4. Giám sát các chèn MySQL từ các ứng dụng khác nhau

  5. Làm cách nào để Django hoạt động với MySQL trong XAMPP?