phpMyAdmin
 sql >> Datenbank >  >> Database Tools >> phpMyAdmin

MYSQL - Warnung:#1681 Anzeigebreite für Ganzzahlen ist veraltet

Überprüfen Sie diese Attribute für numerische Typen für die viel komplette Geschichte:

MySQL unterstützt eine Erweiterung zur optionalen Angabe der Anzeigebreite von Integer-Datentypen in Klammern nach dem Basisschlüsselwort für den Typ. Beispielsweise gibt INT(4) ein INT mit einer Anzeigebreite von vier Stellen an. Diese optionale Anzeigebreite kann von Anwendungen verwendet werden, um ganzzahlige Werte anzuzeigen, deren Breite kleiner als die für die Spalte angegebene Breite ist, indem sie links mit Leerzeichen aufgefüllt werden. (Das heißt, diese Breite ist in den Metadaten vorhanden, die mit Ergebnismengen zurückgegeben werden. Ob sie verwendet wird, hängt von der Anwendung ab.)

Die Anzeigebreite schränkt den Wertebereich, der in der Spalte gespeichert werden kann, nicht ein. Es verhindert auch nicht, dass Werte, die breiter als die Spaltenanzeigebreite sind, korrekt angezeigt werden. Beispielsweise hat eine als SMALLINT(3) angegebene Spalte den üblichen SMALLINT-Bereich von -32768 bis 32767, und Werte außerhalb des zulässigen Bereichs von drei Ziffern werden vollständig mit mehr als drei Ziffern angezeigt.

Daher sollte es sicher sein, diese Art von Warnung bis zur aktuellen Version von MySQL (8.0.17 zum Zeitpunkt des Schreibens) zu ignorieren.

Wenn Sie diese Warnungen vermeiden und auf Nummer sicher gehen möchten, aktualisieren Sie alle Ihre betroffenen Tabellen mit Spaltentypdefinitionen wie INT(##) zu INT (also ohne explizite Angabe der Anzeigebreite).