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


Автор: unas 1.5.2007, 20:54
Всем добрый вечер....
Есть такой запрос, надо вывести все записи от например 01.01.1998 до 01.01.2006
результат не совсем коректен, почемуто выводятся еще и записи которые, на один год больше или меньше, тоесть запрос захватывает еще и рядом стоящие года по обеи стороны (выводит 01.01.1997 и 01.01.2007) а надо см.выше
Код


Query1->SQL->Add("select Name_book from book, kategor where name_kategor= '"+Edit1->Text+"' and Year_publich > = : YEAR_FROM and Year_publich < = :YEAR_TO and book.id_kategor=kategor.id_kategor");

Query1->ParamByName("YEAR_FROM")->AsString = DateToStr(MaskEdit1->Text);

Query1->ParamByName("YEAR_TO") ->AsString = DateToStr(MaskEdit2->Text);


 
я использовал такой вариант, может есть другой ? Это плохо работает, или здесь ошибка

Автор: Partizan 1.5.2007, 21:09
попробуй так

Код

Query1->SQL->Add("select Name_book from book JOIN kategor ON  book.id_kategor=kategor.id_kategor where name_kategor= '"+Edit1->Text+"' and Year_publich > = : YEAR_FROM and Year_publich < = :YEAR_TO");
Query1->ParamByName("YEAR_FROM")->AsString = DateToStr(MaskEdit1->Text);
Query1->ParamByName("YEAR_TO") ->AsString = DateToStr(MaskEdit2->Text);

Автор: Vyacheslav 2.5.2007, 12:16
А может все таки  правильнее будет 
Код

Query1->ParamByName("YEAR_FROM")->AsDate = MaskEdit1->Text;
Query1->ParamByName("YEAR_TO") ->AsDate =  MaskEdit2->Text;

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