Utworzyłem stół i przypadkowo podałem varchar
długość 300
zamiast 65353
. Jak mogę to naprawić?
Przykład byłby mile widziany.
mysql
database
alter-table
pojazd
źródło
źródło
Musisz dwukrotnie wymienić nazwę kolumny, nawet jeśli nie zmieniasz jej nazwy.
Pamiętaj, że po wprowadzeniu tej zmiany typ danych kolumny będzie
MEDIUMTEXT
.Miky D ma rację,
MODIFY
polecenie może to zrobić bardziej zwięźle.Chodzi o to
MEDIUMTEXT
, że wiersz MySQL może mieć tylko 65535 bajtów (nie licząc kolumn BLOB / TEXT). Jeśli spróbujesz zmienić kolumnę na zbyt dużą, co spowoduje, że całkowity rozmiar wiersza 65536 lub większy, może wystąpić błąd. Jeśli spróbujesz zadeklarować kolumnęVARCHAR(65536)
, jest ona zbyt duża, nawet jeśli jest to jedyna kolumna w tej tabeli, więc MySQL automatycznie konwertuje ją naMEDIUMTEXT
typ danych.Źle odczytałem twoje oryginalne pytanie, które chcesz
VARCHAR(65353)
, co MySQL może zrobić, o ile rozmiar kolumny zsumowany z innymi kolumnami w tabeli nie przekracza 65535.źródło