26.3. Изменение типа данных столбца (metastore.change_column_type) #
Требуемые права: только администратор Postgres Pro AXE. За подробной информацией о хранимых процедурах и правах обратитесь к Разделу 22.1.
Выполните следующую команду:
SELECT metastore.change_column_type('имя_таблицы', 'имя_столбцы', 'новый_тип_данных');Где:
имя_таблицы: имя аналитической таблицы, которая содержит столбец.Можно указать полное имя в формате
имя_схемы.имя_таблицыили просто имя таблицы. Если не указать имя аналитической схемы, используется текущая схема.имя_столбца: имя столбца, тип данных которых изменяется.новый_тип_данных: новый тип данных столбца.За подробной информацией о поддерживаемых типах данных обратитесь к Разделу F.3.
Postgres Pro AXE выполняет следующие действия:
Проверяет параметры ввода и права пользователя.
Проверяет, что новый тип данных столбца не совпадает с предыдущим.
Проверяет, что аналитическая таблица пустая или что новый тип данных совместим с предыдущим:
int8можно изменить наint16,int32илиint64;int16можно изменить наint32илиint64;int32можно изменить наint64;uint8можно изменить наuint16,uint32илиuint64;uint16можно изменить наuint32илиuint64;uint32можно изменить наuint64;float32можно изменить наfloat64.
Обновляет значение
column_typeдля столбца в таблице метаданныхpga_column.Обновляет значение
view_sqlдля аналитической таблицы.
Пример 26.3. Выполнение хранимой процедуры metastore.change_column_type
SELECT metastore.change_column_type('testtable', 'third_col', 'uint8');