How to add new columns at runtime?

Can anyone tell me how to add new columns, at runtime, in an existing
table?

I tried the following code, but get an EDBEngineError with message:
'Table is busy'

-----------
procedure TMainForm.AddColumnClick(Sender: TObject);

begin
if FileExists((ExtractFilePath(Application.ExeName) +
  ('Data\') + ('stock.db'))) then
  with tblStock do
  begin
  Screen.Cursor := crHourGlass;
  Active := False;
  DataBaseName :=  ((ExtractFilePath(Application.ExeName) +
  ('Data\')));
  TableName := 'Stock.db';
  TableType := ttParadox;  

  with FieldDefs do
    begin
    Add('NewColumn', ftString, 20, False);
    end;

  CreateTable;   { <----- generates the Error}
  Active := True;
  Screen.Cursor := crDefault;
  end;

end;