Нужно отредактировать имеющиеся строки в access
пробовала так:
if Form2.FDQuery1.Locate('Login',A,[loCaseInsensitive]) then
begin
if (F.Length<>0) and (D.Length<>0) then
begin
FDQuery1.FieldByName('Othen').AsString:=F;
FDQuery1.FieldByName('Password').AsString:=D;
FDQuery1.Post;
end
else
begin
if F.Length<>0 then
begin
FDQuery1.FieldByName('Password').AsString:=D;
FDQuery1.Post;
end
else
begin
FDQuery1.FieldByName('Othen').AsString:=F;
FDQuery1.Post;
end;
end;
end;
А что не вышло? Сделай нормально отступы. Посмотри. Почему-то если F не пустое, а D пустое, то заполняется пароль из D, заметь - пустого. Если же наоборот, то заполняется Othen из F, то же кстати пустого
if Form2.FDQuery1.Locate('Login',A,[loCaseInsensitive]) then
begin
if (F.Length<>0) and (D.Length<>0) then
begin
FDQuery1.UpdateCursorPos;
FDQuery1.UpdateRecord;
FDQuery1.FieldByName('Othen').AsString:=F;
FDQuery1.FieldByName('Password').AsString:=D;
FDQuery1.Post;
end
else
begin
if F.Length<>0 then
begin
FDQuery1.UpdateCursorPos;
FDQuery1.UpdateRecord;
FDQuery1.FieldByName('Password').AsString:=F;
FDQuery1.Post;
end
else
begin
FDQuery1.UpdateCursorPos;
FDQuery1.UpdateRecord;
FDQuery1.FieldByName('Othen').AsString:=D;
FDQuery1.Post;
end;
end;
end;
end;
благодарю сегодня весь день сижу над этим уже паниковать начала вот выход оказался: FDQuery1.Edit
function TForm2.Insertdata(A,F, D: string): string;
begin
//Insertdata(s3,s4, s5);
if Form2.FDQuery1.Locate('Login',A,[loCaseInsensitive]) then
begin
if (F.Length<>0) and (D.Length<>0) then
begin
FDQuery1.Edit;
FDQuery1.FieldByName('Othen').AsString:=F;
FDQuery1.FieldByName('Password').AsString:=D;
FDQuery1.Post;
end
else
begin
if F.Length<>0 then
begin
FDQuery1.Edit;
FDQuery1.FieldByName('Password').AsString:=F;
FDQuery1.Post;
end
else
begin
FDQuery1.Edit;
FDQuery1.FieldByName('Othen').AsString:=D;
FDQuery1.Post;
end;
end;
end;
end;
Вы пропустили замечание от [Аватар] Я хочу что вы позаботились про
строках просто пробелы?
Почитайте про Trim на пример
Var A, B string;
begin
A := Trim(Edit1.Text);
B := Trim(Edit2.Text);
if (A.Length<>0) and (B.Length<>0) then
begin
................................
...............................
end;
end;
Если я будим присваивать без Trim
A := Edit1.Text;
и случайно пользователь нажал пробел ! то условия IF будет НЕ правильно работать.