고수님들 도와주세요
with Query2 do
begin
Close;
SQL.Clear;
SQL.Add('SELECT COUNT(*) TOTAL_CNT FROM TOJANG WHERE TJ_COMPANY = ''24''');
SQL.Add('AND TJ_GUBUN = :C1 AND TJ_SAUPJANG = :C2');
Params[0].AsString := '50';
Params[1].AsString := G_SaupJang;
Open;
compareCount := FieldByName('TOTAL_CNT').AsInteger;
end;
MessageBox(0, PChar(compareCount), '',MB_ICONSTOP);
ERROR 내용은 첨부했습니다.
한번 봐주세요.. ㅠㅠ 굽신굽신
쿼리가 문제가 아니라 밑에 메시지 띄우는 부분이 문제일듯 합니다.
DB손댄지가 오래되긴 했는데... compareCount := FieldByName('TOTAL_CNT').AsInteger;
이렇게 받아온거 보면 compareCount는 integer 형인듯 한데, 밑에 PChar(compareCount)라고 했으니... 에러가 나지 않을까 하네요.
헉 댓글달고 보니 똑같은걸 백록화님이 벌써 ㅡㅡ;;;
ㅎㅅㅎ 죄송...
SQL.Add('SELECT COUNT(*) TOTAL_CNT FROM TOJANG WHERE TJ_COMPANY = ''24''');
SQL.Add('AND TJ_GUBUN = :C1 AND TJ_SAUPJANG = :C2');
에서 위하고 아래문장이 바로 이어져 있네요..
and 앞에 공백이 있어야 될 듯하네요....
흠.. 오래전에 그런현상이 있긴 했었는데..아마도 기억에 TQuery 와 Paradox 를 사용할때 정확하진 않은데 여튼 철이님의 말씀대로 공백이 없으면 오류가 발생했던거 같아요...지금도 습관적으로 공백을 넣어서 사용하기는 한데 요즘은 파싱들을 하도 잘해서 웬만한것들은 다 정상적으로 처리될꺼에요 ^^ ... 아마도... ㄷㄷㄷ
ㄳㄳ 좋은정보 얻어가요
MessageBox(0, PChar(compareCount), '',MB_ICONSTOP);
compareCount 가 Integer 형인데요... PChar 로 형변환을 하셨으니... String으로 먼저 바꾸시고 해보세요..