В настоящее время я использую следующий метод, чтобы добавить поле в таблицу парадоксов во время выполнения.
procedure TfrmMain.AddField(UpdTable, FieldName, FieldType: string);
begin
with qryUpdate do
begin
Close;
ParamByName('UPDTABLE').AsString := UpdTable;
ParamByName('FLDNAME').AsString := FieldName;
ParamByName('FLDTYPE').AsString := FieldType;
ExecSQL;
Open;
end;
end;
procedure TfrmMain.FormShow(Sender: TObject);
begin
AddField('Test','newfield', 'VARCHAR(30)');
end;
В компоненте под названием «qryUpdate» у меня есть следующий запрос:
ALTER TABLE :UPDTABLE
ADD :FLDNAME :FLDTYPE
Однако при выполнении запроса отображается следующее сообщение:
Недопустимое использование ключевого слова.
Токен: ?
Номер строки: 1.
Что я делаю неправильно?
Другой (связанный) вопрос: не повредит ли добавление подобных полей в существующую базу данных существующим полям/данным?