Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > ADOQuery


Автор: Most 13.5.2009, 21:15
Собственно реализовал БД на ADOTable , с редактированием, добавлением и удалением данных. Хотелось бы сделать по лудше сам фильтр и поиск с использованием TQuery. Все выходит, фильтрует... но вот после этого не удается редактировать. Вопрос в том как на дополнительной форме которую я создал для редактирования записей в поля Edit передавались значения текущей записи в таблице???
вот код того как єто было с использованием ADOTable :
Код

if (ADOTable1->IsEmpty()){
ShowMessage("Нет данных в каталоге\nДобавьте данные");
} else {
TBookmark Marker=ADOTable1->GetBookmark();
InputForm->Edit1->Text=ADOTable1->FieldByName("Name")->AsString;
InputForm->Edit2->Text=ADOTable1->FieldByName("Kind")->AsString;
InputForm->Edit3->Text=ADOTable1->FieldByName("Price")->AsString;
InputForm->Edit4->Text=ADOTable1->FieldByName("Description")->AsString;
do
{
InputForm->ShowModal();
if (InputForm->ModalResult==mrCancel) break;
if  (InputForm->Edit1->Text.IsEmpty()) ShowMessage("Не коректный ввод поля Название");
if  (InputForm->Edit2->Text.IsEmpty()) ShowMessage("Не коректный ввод поля Вид");
if  (InputForm->Edit3->Text.IsEmpty()) ShowMessage("Не коректный ввод поля Цена");
}
while ((InputForm->Edit1->Text.IsEmpty())||(InputForm->Edit2->Text.IsEmpty())||(InputForm->Edit3->Text.IsEmpty()));
if (InputForm->ModalResult==mrOk){
ADOTable1->GotoBookmark(Marker);
ADOTable1->Edit();
ADOTable1->FieldByName("Name")->AsString=InputForm->Edit1->Text;
ADOTable1->FieldByName("Kind")->AsString=InputForm->Edit2->Text;
ADOTable1->FieldByName("Price")->AsString=InputForm->Edit3->Text;
ADOTable1->FieldByName("Description")->AsString=InputForm->Edit4->Text;
Memo1->Text=ADOTable1->FieldByName("Description")->AsString;
ADOTable1->Post();
}}


ПЛЗ ХЕЛП!!!

Автор: vikaz 13.5.2009, 21:23
Вот тема, в которой поднимался вопрос о передаче данных в форму. Если будут вопросы, задавай!

ЗЫ. 
1. Почему в теме ADOQuery,  а в теле сообщения разговор идет про ADOTable?
2. А почему не использовать SQL и ADOQuery. Язык SQL не сравнится с командами Table.


Автор: Most 13.5.2009, 21:31
так вопрост то и состоит в том как этот код переделать под SQL и квери???

Автор: vikaz 13.5.2009, 21:34
Если не сложно, опиши структуру базы и что нужно из нее получить. smile

Автор: Most 13.5.2009, 21:49
=) походу разобрался))) просто выходит ща тупо чтобы перейти от ADOTable к ADOQuery нужно прост везде заменить в коде ADOTable на ADOQuery ))))))))))

Автор: Dmi3ev 14.5.2009, 01:21
Цитата

=) походу разобрался))) просто выходит ща тупо чтобы перейти от ADOTable к ADOQuery нужно прост везде заменить в коде ADOTable на ADOQuery ))))))))))

Именно, только стоит учитывать особенности компонента, а так, многие методы схожи!

Добавлено через 1 минуту и 48 секунд
Ты сам смотри, взял написал ADOQuery1 поставил стрелочку -> и пробегись по возможным вариантом, посмотри, поизучай, какие возможности не знаешь, прочитай про них... Как бы свободней себя чувствуй в среде...

Автор: mrbrooks 14.5.2009, 08:05
Цитата(Dmi3ev @  14.5.2009,  01:21 Найти цитируемый пост)
а так, многие методы схожи!

Папа то - один  smile 

Цитата(Dmi3ev @  14.5.2009,  01:21 Найти цитируемый пост)
Ты сам смотри, взял написал ADOQuery1 поставил стрелочку -> и пробегись по возможным вариантом, посмотри, поизучай, какие возможности не знаешь, прочитай про них...

Лучше сначала почитать, а потом стрелочки ставить имхо

Автор: Dmi3ev 14.5.2009, 08:15
Цитата

Папа то - один  

я думаю, что Most не особо заморачивался по поводу иерархии классов, наследования и всего остального... поэтому я колхозным нашим языком сказал  smile  
Цитата

Лучше сначала почитать, а потом стрелочки ставить имхо 

я когда компонент в первый раз вижу, я его немного потереблю, и иногда оказывается, что я им неплохо пользуюсь... Допустим TChart я так начал изучать... просто тыкал, кликал, что-то писал, в итоге построил то, что нужно... имхо
 smile 
Я люблю просто тыкать.

Добавлено @ 08:15
Учитывая, что я мужского пола, нельзя сказать что это плохо  smile 
Цитата

Я люблю просто тыкать.

зы
во сказал, сначала даже заденей мысли не было  smile 

Автор: Most 14.5.2009, 10:18
а читать про компоненты в хелпе??? прост я когда билдер устанавливал он без хелпа был, вот терь и мучаюсь.У меня сейчас 6-я версия без хелпа... надо будет нормальный себе поставить... кстати какую версию порекомендуют специалисты? 

Автор: mrbrooks 14.5.2009, 10:27
Цитата(Most @  14.5.2009,  10:18 Найти цитируемый пост)
кстати какую версию порекомендуют специалисты? 

2009. Но хелп в нем - кал. Хотя для молодого покатит. 
Цитата(Most @  14.5.2009,  10:18 Найти цитируемый пост)
а читать про компоненты в хелпе??? 

ага. можно книжку заиметь. покатит даже по Дельфятине. Главное, что бы была по БД. 

Автор: Dmi3ev 14.5.2009, 11:20
Цитата

У меня сейчас 6-я версия без хелпа...

а это как так получилось, где такой нарыл?
на шестерке нормально, я пишу, не жалуюсь... 
2009, конечно, манит, но старая добрая шестерка меня не отпускает, я - патриот  smile Шестерка самый популярный  smile 

Автор: Most 14.5.2009, 17:27
та с нета стянул... 

Автор: A5uKa 15.5.2009, 08:28
Цитата

Цитата

кстати какую версию порекомендуют специалисты? 


2009


А мне рекомендовали все 2007...

 smile 
Пишу на 2009

Цитата

а читать

если код сверху ты написал сам можно 
Цитата

стрелочки ставить имхо 

а иначе - ещё вопрос что надо читать... 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)