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

Как да добавя първичен ключ за автоматично увеличение въз основа на реда на колоната?

Имайте предвид, че MySQL таблицата може да има само една колона с AUTO_INCREMENT атрибут.

Ако приемем, че таблицата няма първичен ключ :

ALTER TABLE table_name ADD COLUMN new_id INT NOT NULL;
SET @x = 0;
UPDATE table_name SET new_id = (@x:[email protected]+1) ORDER BY whateveryouwant ASC;
ALTER TABLE table_name ADD PRIMARY KEY new_id (new_id);
ALTER TABLE table_name CHANGE new_id new_id INT NOT NULL AUTO_INCREMENT;

Ако приемем, че таблицата вече има НЕ-инкрементиран първичен ключ :

Просто пропуснете PRIMARY ключова дума в четвъртата команда.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вмъкване и извличане на изображения в mysql чрез python

  2. Някой разбра ли как да мащабира репликите за четене на Amazon RDS?

  3. Как да заключвам изключително mysql база данни?

  4. MySQL съпоставяне за съхраняване на многоезични данни на неизвестен език

  5. SQL заявка, Избиране на 5 последни във всяка група