La dichiarazione che hai pubblicato è sintassi non valida affatto :
SQL Fiddle
Per cambiare il tipo in MySQL, dovresti usare CHANGE o MODIFY .
Per cambiare l'impostazione predefinita dovresti usare DROP DEFAULT o SET DEFAULT NULL .
Se l'intenzione era quella di cambiare il tipo e reimpostare il default della colonna:
Come in MySQL
, puoi raggruppare più azioni in un unico ALTER TABLE dichiarazione in Postgres
.
ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL
,ALTER COLUMN ip_addr TYPE VARCHAR(50);
Ma se c'era un DEFAULT sulla colonna incompatibile con il nuovo tipo, devi eseguire due istruzioni separate:
ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL;
ALTER TABLE lcr_gw ALTER COLUMN ip_addr TYPE VARCHAR(50);
Comunque non importa in questo caso.