投稿したステートメントは無効な構文です :
SQL Fiddle
MySQLでタイプを変更するには、CHANGE
を使用します またはMODIFY
。
デフォルトを変更するには、DROP DEFAULT
を使用します またはSET DEFAULT NULL
。
もし タイプを変更し、列のデフォルトをリセットすることが目的でした:
MySQLのように
、複数のアクションを1つの ALTER TABLE
Postgresのステートメント
。
ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL
,ALTER COLUMN ip_addr TYPE VARCHAR(50);
ただし、DEFAULT
があった場合 新しいタイプと互換性のない列では、2つの別々のステートメントを実行する必要があります。
ALTER TABLE lcr_gw ALTER COLUMN ip_addr SET DEFAULT NULL;
ALTER TABLE lcr_gw ALTER COLUMN ip_addr TYPE VARCHAR(50);
とにかくこの場合は関係ありません。