Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программное добавление столбца в DBgrid 
:(
    Опции темы
Dannasha
Дата 30.4.2012, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



Здравствуйте! БД - PHPMyAdmin (sql запросы), связь через ZConection. Проблема в том, что у меня не получается программно добавить столбец в DBgrid! я как только не пробовала, но все напрасно! столбец добавляется, но он не отображается в таблице, за то в БД внесен! как быть?

PM MAIL   Вверх
Данкинг
Дата 30.4.2012, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(Dannasha @  30.4.2012,  22:43 Найти цитируемый пост)
БД - PHPMyAdmin 

Мускул, что ли?
Цитата(Dannasha @  30.4.2012,  22:43 Найти цитируемый пост)
столбец добавляется, но он не отображается в таблице, 

Откуда тогда знаешь, что добавляется?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 30.4.2012, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



да mysql! когда повторно нажимаю на кнопку добавить, пишет, что поле уже такое существует!соответственно проверяю БД и там оно есть, а в таблице нет! да вобще мне необходимо, создавать столбцы и чтобы у каждого столбца было свое название!
PM MAIL   Вверх
Данкинг
Дата 30.4.2012, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(Dannasha @  30.4.2012,  23:03 Найти цитируемый пост)
а в таблице нет! 

В какой таблице? 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 30.4.2012, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



я имею ввиду DBgride не отображается!
PM MAIL   Вверх
Данкинг
Дата 30.4.2012, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Код

 DBGrid1.Columns.Add;
 DBGrid1.Columns[DBGrid1.Columns.Count-1].Title.Caption:='Новое поле';
 DBGrid1.Columns[DBGrid1.Columns.Count-1].Fieldname:='new_field';



--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 1.5.2012, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



этот код добавляет новое поле только в DBGrid, а мне необходимо, чтобы добавлялось и в DBGrid и в  БД, и еще вводить название столбца сразу.

у меня есть примерный код, но мне выдает ошибку

Код

procedure THarakForm.BitBtn2Click(Sender: TObject);
var
FieldNameAdd : string;
NewFieldName: string;
begin
 NewFieldName:= InputBox('Добавление нового поля', 'Введите название нового поля', 'NewField1');
 with dmu.ZQHadd do
   begin
   DMU.ZQHadd.Active:=false;
   DMU.ZQHadd.SQL.Clear;
   DMU.ZQHadd.SQL.Add('ALTER TABLE DopHarakteris ADD COLUMN [%S] TEXT(20)', [NewFieldName] );
   DMU.ZQHadd.ExecSQL;
   DMU.HarakTable.Active:=false;
   DMU.HarakTable.Active:=true;
   DMU.HarakTable.Refresh;
   end;
     with DBGrid1.Columns.Add do
      begin
      FieldName:= NewFieldName;
      if Field = nil then //для проверки 
      ShowMessage('Поле не найдено');
      end;
   end;
end.


Это сообщение отредактировал(а) Dannasha - 1.5.2012, 21:57
PM MAIL   Вверх
Данкинг
Дата 1.5.2012, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(Dannasha @  1.5.2012,  22:50 Найти цитируемый пост)
но мне выдает ошибку

Какую?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 1.5.2012, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



[Error] HarakUnit.pas(83): Too many actual parameters и ссылается на эту часть кода 

DMU.ZQHadd.SQL.Add('ALTER TABLE DopHarakteris ADD COLUMN [%S] TEXT(20)', [NewFieldName] );

Это сообщение отредактировал(а) Dannasha - 1.5.2012, 22:30
PM MAIL   Вверх
Данкинг
Дата 1.5.2012, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



А что означает [%S] вообще? В этом месте должно идти название поля. Откуда ему браться? И что за [NewFieldName] ?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Vas
Дата 2.5.2012, 07:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 830
Регистрация: 29.6.2005
Где: Stavropol region

Репутация: 23
Всего: 28



Больше на синтаксис Format похоже
Код

DMU.ZQHadd.SQL.Add(Format('ALTER TABLE DopHarakteris ADD COLUMN %s TEXT(20)', [NewFieldName]));


Это сообщение отредактировал(а) Vas - 2.5.2012, 07:25


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
Данкинг
Дата 2.5.2012, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Ну так в этом месте должен быть параметр запроса же.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 2.5.2012, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



Цитата(Vas @ 2.5.2012,  07:24)
Больше на синтаксис Format похоже
Код

DMU.ZQHadd.SQL.Add(Format('ALTER TABLE DopHarakteris ADD COLUMN %s TEXT(20)', [NewFieldName]));

спасибо, колонку в DBGrid добавляет, но теперь я не могу в колонку вносить данные :((

Это сообщение отредактировал(а) Dannasha - 2.5.2012, 20:42
PM MAIL   Вверх
Данкинг
Дата 2.5.2012, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Значит, запрос нередактируемый.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Dannasha
Дата 2.5.2012, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 29.4.2012

Репутация: нет
Всего: нет



тогда как быть, какой код необходим?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1146 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.