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

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

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2015, 19:46   #1
Danon7757
 
Регистрация: 20.04.2015
Сообщений: 6
По умолчанию Отбор SQL запросом

У меня есть бд аксес. Через ADOQuery мне надо сделать отбор по введенной дате в Edit, Вот пример кода:

Код:
void __fastcall TForm5::Button1Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(" SELECT FROM 'Prodazi' Where 'Date_sold' LIKE '%" + Edit1->Text+ "%'"; break;
ADOQuery1->Open();
}
Я профан в программировании, помогите пожалуйста, как правильно написать код
Цитата:
Пишет [bcc32 Error] Unit4.cpp(21): E2121 Function call missing )
Full parser context
Unit4.cpp(18): parsing: void _fastcall TForm5::Button1Click(TObject *)
и
Цитата:
[bcc32 Error] Unit4.cpp(21): E2030 Misplaced break
Full parser context
Unit4.cpp(18): parsing: void _fastcall TForm5::Button1Click(TObject *)

Последний раз редактировалось Stilet; 02.05.2015 в 20:06.
Danon7757 вне форума Ответить с цитированием
Старый 02.05.2015, 20:06   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Add(
А закрывающая скобка где? Забыл?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 20:11   #3
Danon7757
 
Регистрация: 20.04.2015
Сообщений: 6
По умолчанию

тут уже дело не в скобке, а в самом коде, я не понимаю как написать.
ADOQuery1->SQL->Text= "select * from Prodazi where Date_sold = " ;
Сделал вот так, уже запускается, но он ничего не отбирает

ADOQuery1->SQL->Text= "select * from Prodazi where Date_sold BETWEEN '" + Edit1->Text;
вот так пробую, но не фильтрует все равно

Последний раз редактировалось Stilet; 02.05.2015 в 21:15.
Danon7757 вне форума Ответить с цитированием
Старый 02.05.2015, 21:08   #4
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

надо попробовать справку почитать
lomastr_ вне форума Ответить с цитированием
Старый 02.05.2015, 21:17   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Danon7757
Для BETWEEN обычно указывается AND.
Пример:
Код:
BETWEEN 5 AND 25
Т.е. между пятью и двадцати пятью, что собственно представлено в человеческой форме языка.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 21:18   #6
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
мне надо сделать отбор по введенной дате в Edit, Вот пример кода:
1) Тип поля на ваши таблице должен Дата/время
2) Почему компонент "Edit1->Text" Дата это не текст да ? есть же компонент DateTimePicker
3) отбор надо реализовать по диапазону
Код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
	ADOQuery1->Close();
	ADOQuery1->SQL->Clear();
	ADOQuery1->SQL->Text="SELECT *FROM Orders WHERE OrderDate between :P_Start and :P_End ";
	ADOQuery1->Parameters->ParamByName("P_Start")->Value = DateTimePicker1->Date;
	ADOQuery1->Parameters->ParamByName("P_End")->Value = DateTimePicker2->Date;
	ADOQuery1->Open();
}
4) А если мне надо отбор какой то поля где текст ! тогда можно использовать "Edit1->Text"
Код:
void __fastcall TfrmMain::Edit1Change(TObject *Sender)
{
	ADOQuery1->Close();
	ADOQuery1->SQL->Clear();
	ADOQuery1->SQL->Text="SELECT *FROM Employees WHERE LastName LIKE '"+Edit1->Text+"%'";
	ADOQuery1->Open();
}

Последний раз редактировалось xxbesoxx; 02.05.2015 в 21:24.
xxbesoxx вне форума Ответить с цитированием
Старый 02.05.2015, 21:28   #7
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
надо попробовать справку почитать
и помощь надо ПОПРОБОВАТЬ !!!
xxbesoxx вне форума Ответить с цитированием
Старый 03.05.2015, 13:25   #8
Danon7757
 
Регистрация: 20.04.2015
Сообщений: 6
По умолчанию

xxbesoxx Спасибо огромное тебе, все заработало!!!
Danon7757 вне форума Ответить с цитированием
Старый 03.05.2015, 20:48   #9
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Пожалуйста , расти дальше
xxbesoxx вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Цикл с запросом (SQL) manula PHP 5 14.04.2013 15:01
Вопрос с SQL Запросом павел павел Microsoft Office Access 7 07.11.2012 22:02
Проблема с sql запросом CRASH040 БД в Delphi 0 29.05.2011 15:00
Помогите с SQL запросом DDmitriy Microsoft Office Access 4 07.05.2009 15:51
SQL. Помогите с запросом. fluxion БД в Delphi 2 27.12.2007 08:01