Mysql
 sql >> база данни >  >> RDS >> Mysql

Искам да използвам повторно пропуските на изтритите редове

Наистина не трябва. Първичните ключове трябва да бъдат чисто технически, безсмислени стойности. Тяхната стойност и монотонността на поколението изобщо не трябва да имат значение.

Освен това, тъй като това е PK на реда, ще имате потенциално десетки (или хиляди) други редове в други таблици, препращащи към този идентификатор (чужди ключове), така че промяната му в таблицата няма да е достатъчна:ще трябва да промените навсякъде.

Освен това има голям шанс този идентификатор да бъде споменат и в други приложения (например може да е част от URL адрес с отметка в браузър) и промяната на стойността му би направила всички тези препратки невалидни.

Никога не трябва да променяте първичен ключ. Трябва да е неизменно, завинаги.

РЕДАКТИРАНЕ:Грешно прочетох въпроса. Всъщност искате да използвате повторно стар идентификатор. Това също е лоша идея. Съществуващите препратки биха препратили към нещо различно от първоначално споменатото. Това се случва, когато промените телефонния си номер и той се използва повторно от някой друг, който започва да получава много обаждания от хора, които все още смятат, че този телефонен номер е ваш. Много досадно. Искате да избегнете тази ситуация.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails 3 заявка при условие на броене на асоциация

  2. Да съхранявате html обекти в базата данни? Или да конвертирате при извличане?

  3. MySQL атомарни операции и заключване на таблици

  4. Създайте домейн в MySQL

  5. Как ефективно да проектирам MySQL база данни за моя конкретен случай