안녕하세요
지금 프로그램 수정단계에 있는데요
우편번호 을 읽어오는데 문제가 생겨서
수정하다 보니 에러도 생기고 어떻게 해야 할지??
if edaddress.text <> '' then begin
edaddr.text := edaddress.text; //주소검색 패널에서 값을 가져감
with postQ do begin //선택한 우편번호로 레코드를 이동
close;
sql.Clear;
sql.add('select *from zip.db');
sql.Add('where addr like '+edaddress.text+'');
->open;
end;
ed_postnumber.Text:=postQ.fieldbyname('zip').AsString;//우편번호의 값을가져간다.
end;
end;
위가 문제의 코딩부분입니다
우편번호를 찾는 프로그램에서 대부분
동,면,읍을 가지고 찾잖아요 그럼 중복되는
동이 있기 마련이죠 그래서 중복된 동이 들어간
주소들을 콤보박스에 넣고 선택하게끔 만들었습니다
그런데 문제는
우편번호는 마지막레코드에 커서가 가있기 때문에 항상
마지막 레코드의 우편번호만 가져오는것이죠
그래서 그문제를 해결하려고
위의 코딩을 했는데
에러가 생기네요
에러에 내용은
' Token not found Token: 경기도(선택된주소의 값의 앞머리말)
Line Number:2(이건 콤보박스의 아이템라인을 나타내는거 같습니다.)
어떻게 해야 이런 에러없이 우편번호를 선택한 값에 맞게
넣을 수 있을까요?
그럼 안녕히!!
수고들하시고요
좋은하루되세요
구현할려는게 뭔지 잘 모르겠네요..
그냥 우편번호 검색 하는걸 하실려고 한것 같은데..
읍면동으로 검색을 해서.. 그리드에 나타내어 주구요..
그걸 선택하면 넣도록.. 보통 다들 그렇게 하지 않나??
코딩은 SQL문에 좀 에러가 있는것 같네요.
with postQ do begin //선택한 우편번호로 레코드를 이동
close;
sql.Clear;
sql.add('select *from zip.db');
sql.Add('where addr like '+edaddress.text+'');
open;
end;
일단.. edaddress.text <-- 요넘이 주소 맞죠? 그럼 쿼리가 좀 잘못되었네요
그리고 select <띄우셔야 합니다.> * <여기두> from zip.db
sql.Add(' select * from zip.db ');
sql.Add(' where addr like ''%'' + :searchAddr + ''%'' ' );
ParamByName('searchAddr').AsString := edaddress.text;
open;
그럼. 즐거운시간 되세요.
- 하얀까마귀 -