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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2010, 14:48   #1
Cartman18
Пользователь
 
Регистрация: 10.12.2007
Сообщений: 28
По умолчанию Возвращает только одну запись....

Почему то он захватывает только одну запись из таблицы, самую первую?
Цитата:
procedure TForm1.Button1Click(Sender: TObject);
begin

if (Edit1.text=Query1LOG.AsString) then
Form1.Hide
else
MessageBox(Handle,'Логин не верен','Логин',0);
end;
end.
Суть программы как бы ввести логин и войти в программу. Как вообще реализовать это? Чтобы реагировал edit1 на все записи в таблице а не токо на первую.Заранее спасибо.)
Cartman18 вне форума Ответить с цитированием
Старый 15.09.2010, 15:01   #2
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

а вы сравниваете только с 1 записью , в цикле пробегитесь
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 15.09.2010, 15:12   #3
quit
Я есть!
Форумчанин
 
Аватар для quit
 
Регистрация: 17.02.2008
Сообщений: 318
По умолчанию

Код:
  Query1.First;
  while not Query1.Eof do
  begin
    if (Edit1.text=Query1LOG.AsString) then
    begin
      Form1.Hide;
      Exit;
    end;
    Query1.Next;
  end;
  MessageBox(Handle,'Логин не верен','Логин',0);
©Учиться, учиться и еще раз учиться!
quit вне форума Ответить с цитированием
Старый 15.09.2010, 16:15   #4
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Зачем цикл? А если записей очень много?
Код:
query2.close;
query2.text:= 'select count(log) from table where log = "'+'Edit1.text+"';
query2.open;
if query2.fields[0].asinteger = 0 then MessageBox(Handle,'Логин не верен','Логин',0) 
else Form1.Hide;
_SERGEYX_ вне форума Ответить с цитированием
Старый 15.09.2010, 16:23   #5
quit
Я есть!
Форумчанин
 
Аватар для quit
 
Регистрация: 17.02.2008
Сообщений: 318
По умолчанию

Согласен, можно еще и так.
Код:
if Query1.Locate('LOG',Edit1.text,[]) then      
  Form1.Hide;
else
  MessageBox(Handle,'Логин не верен','Логин',0);
©Учиться, учиться и еще раз учиться!
quit вне форума Ответить с цитированием
Старый 15.09.2010, 16:53   #6
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Угу. Так, наверно, будет правильней всего.
_SERGEYX_ вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из DBGrid в FastReport одну запись Ghjuhfvvf Помощь студентам 5 27.05.2011 11:23
Вывести только одну категорию вместо списка категорий goofman PHP 3 18.05.2010 18:34
Добавить только одну строчку, а не все hozey Общие вопросы Delphi 3 14.05.2010 18:12
passthru выводит только одну строку motorway PHP 5 07.07.2009 21:27
Запись в одну строку Terran Общие вопросы Delphi 2 08.05.2008 23:35