Некоторые отличия между синтаксисом ALTER DATABASE в PostgreSQL и Oracle:
- Использование ключевых слов. 1 В PostgreSQL для изменения столбца используется ключевое слово ALTER, в Oracle — MODIFY. 1
- Оформление определений столбцов. 1 В Oracle определения столбцов нужно заключать в скобки. 1
- Параметры команды DROP COLUMN. 1 В PostgreSQL в конце команды есть два параметра: CASCADE и RESTRICT. 1 CASCADE автоматически удаляет объекты, которые зависят от таблицы, а RESTRICT отказывается удалять таблицу, если на неё зависят какие-либо объекты. 1
- Обработка ссылок на удаляемые столбцы. 1 В Oracle, если есть столбцы, которые ссылаются на удаляемые столбцы с помощью ограничений, в конце команды нужно указать CASCADE CONSTRAINTS. 1 Если таких столбцов нет, то этот параметр не нужен. 1
В целом для PostgreSQL и Oracle верно, что добавление столбца не приводит к перезаписи всей таблицы, если не указано значение по умолчанию, а удаление столбца не перезаписывает таблицу. 4