Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak dodać klucz podstawowy automatycznego przyrostu na podstawie kolejności kolumn?

Zauważ, że tabela MySQL może mieć tylko jedną kolumnę z AUTO_INCREMENT atrybut.

Zakładając, że tabela nie ma klucza podstawowego :

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;

Zakładając, że tabela już ma nieinkrementowany klucz podstawowy :

Po prostu pomiń PRIMARY słowo kluczowe w czwartym poleceniu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java+Tomcat, Umierające połączenie z bazą danych?

  2. Rejestracja użytkownika i weryfikacja poczty e-mail PHP i MySQL

  3. Dostarczono nieprawidłowy argument bazy danych PHP dla foreach()

  4. Zmień format wyświetlania pola daty i czasu w MySQL PHP

  5. Jak pobrać wspólne rekordy w tej samej tabeli bazy danych za pomocą pojedynczego zapytania SQL?