Поделиться через


Команда alter table

Команда .alter table делает следующее:

  • Защищает данные в столбцах "сохраненных"
  • Переупорядочение столбцов таблицы
  • Задает новую схему столбца и папку для существующей таблицы, перезаписав существующую схему docstringdocstringстолбца и папку.
  • Должен выполняться в контексте определенной базы данных, которая определяет имя таблицы.

Предупреждение

.alter Неправильное использование команды может привести к потере данных.

Разрешения

Для выполнения этой команды необходимо иметь по крайней мере разрешения администратора таблицы.

Синтаксис

.altertable tableName columnName(: columnType [, ...]) [ propertyName = propertyValue [, (with...]])

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
tableName string ✔️ Имя таблицы для изменения.
columnName, columnType string ✔️ Имя существующего или нового столбца, сопоставленного с типом данных в этом столбце. Список этих сопоставлений определяет схему выходного столбца.
propertyName, propertyValue string Разделенный запятыми список пар свойств "ключ-значение". См . поддерживаемые свойства.

Предупреждение

Существующие столбцы, которые не указаны в команде, будут удалены. Это может привести к неожиданной потере данных.

Совет

Используйте .show table [tableName] cslschema для получения существующей схемы таблицы перед его изменением.

Поддерживаемые свойства

Имя. Тип Описание
docstring string Бесплатный текст, описывающий добавляемую сущность. Эта строка представлена в различных параметрах пользовательского интерфейса рядом с именами сущностей.
folder string Имя папки, добавляемой в таблицу.

Как команда влияет на данные

  • Существующие данные в столбцах, перечисленных в команде, не будут изменены
  • Существующие данные в столбцах, не перечисленных в команде, будут удалены
  • Новые столбцы будут добавлены в конец схемы
  • Предполагается, что данные в новых столбцах являются null
  • Таблица будет иметь те же столбцы в том же порядке, что и указано

Примечание.

При попытке изменить тип столбца команда завершится ошибкой. Вместо этого используйте .alter column.

Предупреждение

  • Прием данных, который игнорирует порядок столбцов и выполняется параллельно с .alter table рисками приема данных в неправильные столбцы. Чтобы предотвратить это, убедитесь, что прием использует объект сопоставления или остановить прием во время выполнения .alter table команды.
  • Прием данных может изменить схему столбцов таблицы. Будьте осторожны, чтобы не случайно удалить нужные столбцы, добавленные во время приема.

Примеры

.alter table MyTable (ColumnX:string, ColumnY:int) 
.alter table MyTable (ColumnX:string, ColumnY:int) with (docstring = "Some documentation", folder = "Folder1")

Используйте .alter-merge , если вы хотите сохранить параметры таблицы и переопределить или развернуть определенные столбцы. Дополнительные сведения см. в таблице alter-merge.