안뇽하세요
오늘은 또 이런 문제가...ㅡㅡ;
우선 에러메세지는 'ORA-00932 : 데이타유형이 일치하지 않습니다.'
입니다...
디비는 오라클 7을 쓰고 있구요
쿼리 올리기는 모해서 그냥 이렇게만 쓰는데 알 수 있을까요??
쿼리문을 나눠서 조금씩 실행하면은 잘되는데 모두 합쳐서 하면 에러가 나네요
왜 그럴까요??
그리고 쿼리문 쓸때
WHERE MAIN_CODE = 'item' 이라고
MAIN_CODE의 필드값이 'item'과 같은거라는 건데 그냥 이렇게 쓰면 에러가 뜨고
WHERE MAIN_CODE = :as_item
_________________________________________
ParamByName('as_item').Asstring:='item';
이렇게 쓰면은 되더라구요
복잡하게 이렇게 쓰는 방법 말구 그냥 :as_item에다가 'item'이라는 값을 줄려면
어떻게 해야할지요...????
TempQuery.SQL.Clear;
TempQuery.SQL.ADD(' SELECT * FROM TEMPTABLE ');
TempQuery.SQL.ADD(' WHERE MAIN_CODE = ''item'' ');
TempQuery.SQL.OPEN;
요렇게요..
하지만 님이 하시는 방법이 더 좋은 방법입니다..
TempQuery.SQL.Clear;
TempQuery.SQL.ADD(' SELECT * FROM TEMPTABLE ');
TempQuery.SQL.ADD(' WHERE MAIN_CODE = :asitem ');
TempQuery.ParamByName('as_item').Asstring:='item';
TempQuery.PrePare;
TempQuery.SQL.OPEN;
이렇게 하시면 일단 보기두 깔금하구요..
글구 속도가 빨르다고 합니다..
DB에서 파싱단계를 Skip하기 때문이라는데.. ^^;
좌간 님의 방법이 더 좋습니다..
즐코 하세요..