Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2011, 18:38   #1
grh
Пользователь
 
Регистрация: 24.09.2010
Сообщений: 35
По умолчанию Программное добавление и удаление полей

Привет, форумчане. У меня такая проблема:
Есть mdb-файл, а в нем таблица "Табл1". На форме, созданной в Delphi, есть компонент ADOTable1: TADOTable;, который связан с "Табл1".
Вопросы:
1. Как программно добавить новые поля в таблицу "Табл1"?
2. Как программно удалить некоторые поля из таблицы "Табл1"?
grh вне форума Ответить с цитированием
Старый 09.06.2011, 23:27   #2
Gulik
Холост/Не замужем
Форумчанин
 
Аватар для Gulik
 
Регистрация: 13.11.2007
Сообщений: 283
По умолчанию

через adoquery делай

1:
Код:
ALTER TABLE Табл1 ADD MyField Numeric (10,2)
2:
Код:
ALTER TABLE Табл1 DROP COLUMN Numeric

Последний раз редактировалось Gulik; 09.06.2011 в 23:36.
Gulik вне форума Ответить с цитированием
Старый 10.06.2011, 10:04   #3
grh
Пользователь
 
Регистрация: 24.09.2010
Сообщений: 35
По умолчанию

Спасибо. Буду пробовать.

После выполнения процедуры:

Код:
procedure TForm1.Button2Click(Sender: TObject);
begin
  ADOQuery1.SQL.Text:='ALTER TABLE Табл1 ADD MyField Numeric (10,2)';
  ADOQuery1.Active:=true;
end;
появляется сообщение

"Project Project1.exe raised exception class EOleException with message 'Текущий проводник не поддерживает возврат нескольких наборов записей в результате одной операции'.".

Что же делать?

Последний раз редактировалось Stilet; 11.06.2011 в 16:22.
grh вне форума Ответить с цитированием
Старый 11.06.2011, 02:50   #4
Gulik
Холост/Не замужем
Форумчанин
 
Аватар для Gulik
 
Регистрация: 13.11.2007
Сообщений: 283
По умолчанию

Код:
procedure TForm1.Button2Click(Sender: TObject);
begin
   ADOQuery1.SQL.Text := 'ALTER TABLE Табл1 ADD MyField Numeric (10,2)' ;
   ADOQuery1.ExecSQL ;
end;
ADOQuery1.Active := True ; - используется только в SELECT
в остальных случаях ADOQuery1.ExecSQL ;

===================================
Не забывайте оставлять Отзыв (Иконка весы)
Gulik вне форума Ответить с цитированием
Старый 11.06.2011, 11:35   #5
grh
Пользователь
 
Регистрация: 24.09.2010
Сообщений: 35
По умолчанию

Спасибо, Gulik. Теперь все работает отлично.
grh вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программное добавление items в ListView Марк Охман Общие вопросы Delphi 4 30.12.2010 16:44
Программное добавление пользователя в Active Directory smilova Работа с сетью в Delphi 6 19.04.2010 01:12
Программное добавление программы в System Tray .Phoenix Общие вопросы Delphi 5 30.09.2009 11:42
Программное добавление принтера AlexandrSid Общие вопросы Delphi 5 13.08.2008 15:29
Удаление/добавление полей runtime /Denis/ БД в Delphi 1 06.08.2008 22:35