Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > незнаю куда вставить и как заставить работать SQL


Автор: Berliner 16.8.2005, 12:15
вот хочу на кнопку повесить еще один запрос один повесил а второй не получается / хочу вставить на вторую кнопку select * from "people.db" where "Семейное положение":=mar

куда это пихать?

вот первый запрос работает я SQl вставил в Query SQL

А этот тоже туда вставлять?

и параметры добавил

вот мой код
Код

procedure TForm2.BitBtn1Click(Sender: TObject);
begin
If RadioButton1.Checked=true then
begin
Form3.Show;
Form3.Query1.Close;
Form3.Query1.ParamByName('Namex').AsString:=Form2.Edit1.Text  ;
Form3.Query1.Open;
end;

// Вот до сюдова у меня работает 1RadioButton работает. А ниже не знаю как быть 
if RadioButton3.Checked=true then
begin
Form3.Show;
Form3.Query1.Close;
Form3.Query1.ParamByName('mar').AsString:=Form2.Edit1.Text ;
Form3.Query1.Open;


end;


Подскажите как дальше обработать что куда пихать

Автор: Vit 16.8.2005, 15:11
Или закрыть первый запрос, изменить его текст на второй и открыть или положить на форму другой TQuery и присвоить ему новый текст... Вы можете открывать сколько угодно запросов на одной и той же таблице

Автор: Berliner 16.8.2005, 17:28
Спасибо, буду пробывать

Автор: Berliner 17.8.2005, 10:40
добавил еще один квери
Код

procedure TForm2.BitBtn1Click(Sender: TObject);
begin
If RadioButton1.Checked=true then
begin
Form3.Show;
Form3.Query1.Close;
Form3.Query1.ParamByName('Namex').AsString:=Form2.Edit1.Text  ;
Form3.Query1.Open;

end;
if RadioButton3.Checked=true then
begin
Form3.Show;
Form3.Query2.Close;
Form3.Query2.ParamByName('mar').AsString:=Form2.Edit1.Text ;
Form3.Query2.Open;


end;
end;

Добавил параметр в Params
SQL:
Код

select * from "people.db" where "Семейное положение" :=mar


не работает пишет при вопытке активации квери Token not found
Token положение
Line1
Подскажите а то сильно нужно
Добавлено @ 10:43
P.S. Я думаю, там что то не так с кавычками

Автор: bursa 17.8.2005, 12:04
select * from "people.db" where "Семейное положение" = :mar

Автор: Berliner 17.8.2005, 13:10
Не работает запрос не выдает ничего smile
хотя есть две записи удовлетворяющее утому условию(запрос проверял и в Датабейз эксплорере ), выдает пустую таблицу
Код

select * from people.db where "Семейное положение"='холост'


И еще
как парвильно настроить связки тэйбл,квери,сорс

у меня так
Table1 Ссылается на Source1
Source1 на Query1

DBGrid1 на Scource1
DbNavirator но Source1

добавил еще Query2
как быть чтобы результат запроса(Query2) показывался в DbGrid1

Кроме как еще кидать на форму еще один грид



Может это выход закрыть первый запрос, изменить его текст на второй и открыть
Добавлено @ 13:13
[quote]закрыть первый запрос, изменить его текст на второй и открыть

Попдробнее можно на основании моего кода smile

Автор: Berliner 17.8.2005, 14:01
Так почему запрос пустой ясно:
select * from people.db where "Семейное положение"='холост'

Как выйти из положения если в названии поля два слова


Добавлено @ 14:05
непонимает двойных кавычек

Автор: Berliner 17.8.2005, 15:18
Так вроде разобрался поставил подчеркивание и получилось одно слово

Но теперь вылезла другая проблема с запросом

не хочет раюотать может неправильно синтаксис у фильтров поставил вот запрос:
Код

Select * from "people.db" where Дата_Рождения between =:DateB1
and  =:DateB2



Подскажите плиз, Сильно надо smile smile

Автор: bursa 17.8.2005, 15:21
Select * from "people.db" where Дата_Рождения between :DateB1
and :DateB2

Автор: Berliner 17.8.2005, 15:22
не хочет роботать

Автор: Berliner 17.8.2005, 22:09

Для bursa:
Извини предудущее сообщение я дописывал не видя твоего ответа
Завтра проверю, спасиб за помощь

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