델파이로 로그인 창을 만들려고 합니다
패스워드와 아이디 정보는 파라독스7 D/B에 저장하려고 합니다.
패스워드와 아이디정보는 수정이 가능합니다.
제가 궁금한점은 로그인창에서 패스워드와 아이디를 입력했을때 D/B와 비교하는 법입니다.
그리고 D/B에 하나이상의 데이터가 저장되지 않는법 또한 알고 싶습니다.
그럼 여러 고수님들의 의견부탁합니다.
음.. 그냥 SQL문으로 비교하시면 안되나요?
가령 생성한 DB의 필드명을 이름=id 이고 패스워드가=pwd 라면 설정했다면..
//입력한 id와 password로 테이블 검색.
with Query1 do begin
Close;
Sql.Clear;
Sql.Add(' Select id from 테이블명 ');
Sql.Add(' Where id = :input_id ');
Sql.Add(' And pwd = :input_pwd ');
ParamByName('input_id').AsString:=아이디입력받은 값
ParamByName('input_pwd').AsString:=패스워드입력받은 값
Open;
end;
//검색한 자료가 있는지 확인.
if Query1.Eof then
사용자아이디 및 패스워드 입력오류 처리.
else
사용자확인됨 정상처리.
그리고 DB를 만들때 Row 갯수를 제한할수 있는기능이 자체적으로 있는지는 잘 모르겠습니다. 못본것 같은데요. 보통 DBMS는 용량을 제한하거든요....
뭐 있다면 좋겠지만... 없다면 델파이프로그램에서 직접제어하셔도 상관없을것 같네요. 어차피 수정하는거야... 자료개수가 증가되는게 아니니 상관없고, 사용자 아이디와 패스워드를 입력하고, Post 하는 시점에서 무조건 Delete 문으로 Table의 모든 내용을 삭제하는걸 먼저수행하시면 어떨까요?
좀 그런가 ㅡ.ㅡ??
가령 생성한 DB의 필드명을 이름=id 이고 패스워드가=pwd 라면 설정했다면..
//입력한 id와 password로 테이블 검색.
with Query1 do begin
Close;
Sql.Clear;
Sql.Add(' Select id from 테이블명 ');
Sql.Add(' Where id = :input_id ');
Sql.Add(' And pwd = :input_pwd ');
ParamByName('input_id').AsString:=아이디입력받은 값
ParamByName('input_pwd').AsString:=패스워드입력받은 값
Open;
end;
//검색한 자료가 있는지 확인.
if Query1.Eof then
사용자아이디 및 패스워드 입력오류 처리.
else
사용자확인됨 정상처리.
그리고 DB를 만들때 Row 갯수를 제한할수 있는기능이 자체적으로 있는지는 잘 모르겠습니다. 못본것 같은데요. 보통 DBMS는 용량을 제한하거든요....
뭐 있다면 좋겠지만... 없다면 델파이프로그램에서 직접제어하셔도 상관없을것 같네요. 어차피 수정하는거야... 자료개수가 증가되는게 아니니 상관없고, 사용자 아이디와 패스워드를 입력하고, Post 하는 시점에서 무조건 Delete 문으로 Table의 모든 내용을 삭제하는걸 먼저수행하시면 어떨까요?
좀 그런가 ㅡ.ㅡ??