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

MySql nie może zrobić kolumny auto_increment

Stanie się tak, jeśli tabela zawiera istniejący rekord o identyfikatorze 0 (lub ujemnym). Zaktualizowanie wszystkich istniejących rekordów tak, aby używały wartości dodatnich, pozwoli na ustawienie auto_increment w tej kolumnie.

Edycja:Niektórzy pytali, jak to 0 się tam dostało. Dla wyjaśnienia, MySQL Reference Manual stwierdza, że ​​„Dla typów liczbowych wartością domyślną jest 0, z wyjątkiem tego, że dla typów całkowitych lub zmiennoprzecinkowych zadeklarowanych z atrybutem AUTO_INCREMENT wartością domyślną jest następna wartość w sekwencji”. Tak więc, jeśli wykonałeś wstawianie w tabeli bez podania wartości dla kolumny numerycznej przed włączeniem auto_increment, podczas wstawiania zostanie użyte domyślne 0. Więcej szczegółów można znaleźć na https://dev .mysql.com/doc/refman/5.0/en/data-type-defaults.html .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wyszukiwanie z rozróżnianiem wielkości liter w Django, ale ignorowane w Mysql

  2. async i czekaj na wywołanie MySQL w węźle js

  3. Wyszukiwanie pełnotekstowe MySQL dla słów z trzema lub mniej literami

  4. Neo4j - Utwórz związek za pomocą Cypher

  5. Chart.js - Pobieranie danych z bazy danych za pomocą mysql i php