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

Konvertieren von MySQL-Skripten in Postgresql-Skripte

Die von Ihnen gepostete Aussage ist überhaupt keine gültige Syntax :
SQL-Fiddle

Um den Typ in MySQL zu ändern, würden Sie CHANGE verwenden oder ÄNDERN .
Um die Standardeinstellung zu ändern, verwenden Sie DROP DEFAULT oder SET DEFAULT NULL .

Wenn Die Absicht war, den Typ zu ändern und den Spaltenstandard zurückzusetzen:

Wie in MySQL , können Sie mehrere Aktionen in einen einzigen ALTER TABLE Anweisung in Postgres .

ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL
                  ,ALTER COLUMN ip_addr TYPE VARCHAR(50);

Pro Dokumentation:

Aber wenn es einen DEFAULT gab für die Spalte, die mit dem neuen Typ nicht kompatibel ist, müssen Sie zwei separate Anweisungen ausführen:

ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL;
ALTER TABLE lcr_gw ALTER COLUMN ip_addr TYPE VARCHAR(50);

Ist in diesem Fall sowieso egal.