Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Mysql Workbench Integer-Datentypfehler (INT ändert> (11) )

Ich nehme an aleblebi ist türkisches Mitglied. Aber ich nehme an, das Problem kann auch auf anderen Gebietsschemas gesehen werden. Zuerst werde ich versuchen, das Problem zu erklären und dann werde ich am Ende meine Lösung schreiben.

Sie können das Problem sehen, wenn Sie versuchen, die Tabelle mit der Workbench-GUI zu ändern (ich verwende Version 8.0.15). Die Spalte „Datentyp“ des Rasters und das Textfeld „Datentyp:“ zeigen (11) statt INT(11) , kann dasselbe Problem in DATETIME gesehen werden Spalten, aber diesmal sind die Datentypfelder vollständig leer.

Das Problem tritt auch auf, wenn Sie versuchen, den Assistenten „Mit beliebiger Quelle synchronisieren...“ der Workbench zu verwenden. Am Ende des Assistenten sehen Sie etwas wie:

ALTER TABLE `TEST_1`.`TABLE_1` 
CHANGE COLUMN `ID` `ID` (11) NULL DEFAULT NULL ,
DROP PRIMARY KEY;

statt:

ALTER TABLE `TEST_1`.`TABLE_1` 
CHANGE COLUMN `ID` `ID` INT(11) NULL DEFAULT NULL ,
DROP PRIMARY KEY;

Ich hatte das gleiche Problem und habe ein paar Tage im Internet gesucht und konnte keine Lösung finden (Lösung von camadan war für mich kein Erfolg). Endlich wurde mir klar, dass es nicht nur INT ist Datentyp, sondern auch BIGINT und DATETIME Datentypen hat das gleiche Problem.

Also kam ich zu dem Schluss, dass jeder Datentyp mit einem Großbuchstaben „I“ das gleiche Problem hat. Und im türkischen Alphabet gibt es gepunktete Großbuchstaben İ und normaler Buchstabe I was die Workbench nur dann irgendwie kaputt macht, wenn Sie im Windows-Betriebssystem "Türkisch (Türkei)" als "Regionalformat" auswählen. (Mein Betriebssystem ist Windows 10 Englisch)

Also habe ich das Problem gelöst, indem ich einfach die Einstellung „Regionalformat“ von Windows 10 von „Türkisch (Türkei)“ auf „Englisch (USA)“ geändert habe.

Übrigens habe ich die Option "Land oder Region" so gelassen (in Windows 10 ist es immer noch "Türkei") und ich verwende immer "Englisch (Vereinigte Staaten)" als Option "Sprache für Nicht-Unicode-Programme" in meiner Windows 10-Entwicklungsumgebung.

Ich hoffe, dass diese Information jemandem eines Tages helfen wird...