ITable.AlterTable

Синтаксис

AlterTable(OldTable: ITable; [Options: Integer = 0]);

Параметры

OldTable - таблица, структуру которой необходимо обновить в соответствии со структурой текущей таблицы.

Options - зарезервированный параметр.

Описание

Метод AlterTable осуществляет обновление структуры таблицы OldTable на сервере БД в соответствии со структурой текущей таблицы.

Обновляется информация о следующих элементах таблицы:

Если в таблице OldTable есть элементы, которых нет в текущей таблице - они будут удалены, если в текущей таблице есть элементы, которых нет в таблице OldTable - они будут добавлены.

Пример

Для выполнения примера предполагается наличие в репозитории двух таблиц с идентификаторами «Table_1» и «Table_2».

Sub Main;

Var

MB: IMetabase;

Table, OldTable: ITable;

Field: ITableField;

Begin

Mb := MetaBaseClass.Active;

Table := Mb.ItemById("Table_1").Edit As ITable; //таблица, в соответствии со структурой которой, будем обновлять

OldTable := Mb.ItemById("Table_2").Bind As ITable; //таблица, структуру на сервере БД которой, будем обновлять

Table.NativeName := OldTable.NativeName; //временно устанавливаем одинаковые физические имена.

//Необходимо для сохранения уникальности физ. имени таблицы OldTable

Field := Table.Fields.Add; //Добавляем временное поле, которое затем будет создано в обновляемой таблице

Field.Id := "NewField";

Field.DataType := DbDataType.String;

Field.Size := 20;

Table.AlterTable(OldTable);

End Sub Main;

После выполнения примера будет обновлена структура таблицы на сервере БД, на которую ссылается таблица репозитория «Table_2». Структура будет установлена в соответствии со структурой таблицы, на которую ссылается таблица репозитория «Table_1», а также будет добавлено одно новое текстовое поле «NewField».

См. также:

ITable