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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2010, 00:08   #1
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию Значения поля как переменная

Подскажите пожалуйста как мне в переменную pass получить данные из поля password.. запись в таблиуе только одна..потом сравнить данные с edit1.text ?
DimOn4Ik вне форума Ответить с цитированием
Старый 04.05.2010, 05:05   #2
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Код:
var
 s: string;
...

Query1.Active:=False;
Query1.SQL.Text:='select pass from table';
Query1.Open;

s:=Query1.FieldByName('pass').AsString;

if s <> Edit1.Text then
begin
 ShowMessage('Не совпадает!');
end;

if s = Edit1.Text then
begin
 ShowMessage(Cовпадает!');
end;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 04.05.2010, 07:39   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А покороче?
Код:
var
 s: string;
...

Query1.Active:=False;
Query1.SQL.Text:='select pass from table';
Query1.Open;
if Edit1.Text<>Query1.FieldByName('pass').AsString then 
  ShowMessage('Не совпадает!');
end;
Query1.Close;
Но я бы поэкзотичнее сделал:
Код:
Query1.Active:=False;
Query1.SQL.Text:='select pass from table where pass='+QuotedStr(Edit1.Text);
Query1.Open;
if Query.Eof then 
  ShowMessage('Не совпадает!');
end;
Query1.Close;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.05.2010, 08:23   #4
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Я по-дилетански, Stilet
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 04.05.2010, 15:08   #5
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

Спасибо artemavd и Stilet!
DimOn4Ik вне форума Ответить с цитированием
Старый 04.05.2010, 15:08   #6
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Пожалуйста
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 04.05.2010, 18:17   #7
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

а почему Query1.Active равно False ?

не работает

Цитата:
procedure Tlogin.FormCreate(Sender: TObject);
begin
TRY
ADOConnection1.ConnectionString:=(' Provider=VFPOLEDB.1;Data Source='+ExtractFilePath(paramstr(0 ))+'\db;Password="";Collating Sequence=RUSSIAN');
sSkinManager1.Active:=True;
EXCEPT
ShowMessage('Îøèáêà ïîäêëþ÷åíèÿ ê áàçå äàííûõ!');
end

end;

procedure Tlogin.SpeedButton1Click(Sender: TObject);
begin
QueryAuth.Active:=true;
PMessage.Visible:=true;
PMessage.Caption:='';
QueryAuth.SQL.Text:='SELECT password FROM authorization';
QueryAuth.Open;
if Edit1.Text <> QueryAuth.FieldByName('password').A sString then begin
PMessage.Font.Color:=clRed;
PMessage.Caption:='Äîñòóï çàïðåùåí! Ïðîâåðüòå ïðàâèëüíîñòü ââîäà äàííûõ.';
QueryAuth.Close;
Edit1.Clear;
end
else begin
PMessage.Font.Color:=clGreen;
PMessage.Caption:='Âû óñïåøíî àâòîðèçèðîâàíû!'


end

end;

Последний раз редактировалось DimOn4Ik; 04.05.2010 в 18:24.
DimOn4Ik вне форума Ответить с цитированием
Старый 05.05.2010, 03:19   #8
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Мне кажется, что эта строка (зеленые) лишняя:
Код:
procedure Tlogin.FormCreate(Sender: TObject);
begin
TRY
ADOConnection1.ConnectionString:=(' Provider=VFPOLEDB.1;Data Source='+ExtractFilePath(paramstr(0 ))+'\db;Password="";Collating Sequence=RUSSIAN');
sSkinManager1.Active:=True;
EXCEPT
ShowMessage('Îøèáêà ïîäêëþ÷åíèÿ ê áàçå äàííûõ!');
end

end;

procedure Tlogin.SpeedButton1Click(Sender: TObject);
begin
QueryAuth.Active:=False;
PMessage.Visible:=true;
PMessage.Caption:='';
QueryAuth.SQL.Text:='SELECT password FROM authorization';
QueryAuth.Open;
if Edit1.Text <> QueryAuth.FieldByName('password').A sString then begin
PMessage.Font.Color:=clRed;
PMessage.Caption:='Äîñòóï çàïðåùåí! Ïðîâåðüòå ïðàâèëüíîñòü ââîäà äàííûõ.';
QueryAuth.Close;
Edit1.Clear;
end
else begin
PMessage.Font.Color:=clGreen;
PMessage.Caption:='Âû óñïåøíî àâòîðèçèðîâàíû!'


end

end;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 05.05.2010, 12:21   #9
DimOn4Ik
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 206
По умолчанию

на работает
DimOn4Ik вне форума Ответить с цитированием
Старый 05.05.2010, 13:19   #10
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Что именно не работает? Вам уже дали ответы на ваш вопрос кажется.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как получить значение поля грид на основе значения другого lookUp поля malayka БД в Delphi 0 21.04.2010 19:06
разбивка значения поля на символы NoMoreNick Microsoft Office Access 1 11.04.2010 19:39
Уникальность значения поля maks233 Microsoft Office Access 1 13.01.2009 14:14
Присвоение значения одного поля другому frai БД в Delphi 2 20.09.2007 15:03