오라클을 사용하고 있습니다.
그런데 Query1(TQuery)에서 SQL을 작성하였습니다.
SELECT T1.Numb, T2.Name, T2.Psno
FROM T1,T2,T3
WHERE (TI.NUMB = T2.CODE) AND
(T1.NUMB = T3.PSNO) AND
(T1.NUMB LIKE :pNUMB) // 타입은 스트링입니다.
ORDER BY T1.Numb
여기서 Query1.ParamByName('pNUMB').AsString := Edit1.Text; 했는데
Edit1에 값을 넣으면 데이타가 하나도 나타나지 않고 '%'주었을 때는 모든 데이타가 나타납니다.
분명 조건에 맞는 데이타가 존재하는데 왜 조건만 주면 나타나지 않는 걸까요? 여태 MS-SQL에서는 아무 문제없이 되었는데 오라클에서는 잘 안되는군요. 원인을 아신다면 꼭 부탁드립니다.
> 오라클을 사용하고 있습니다.
> 그런데 Query1(TQuery)에서 SQL을 작성하였습니다.
>
> SELECT T1.Numb, T2.Name, T2.Psno
> FROM T1,T2,T3
> WHERE (TI.NUMB = T2.CODE) AND
> (T1.NUMB = T3.PSNO) AND
> (T1.NUMB LIKE :pNUMB) // 타입은 스트링입니다.
> ORDER BY T1.Numb
>
> 여기서 Query1.ParamByName('pNUMB').AsString := Edit1.Text; 했는데
> Edit1에 값을 넣으면 데이타가 하나도 나타나지 않고 '%'주었을 때는 모든 데이타가 나타납니다.
>
> 분명 조건에 맞는 데이타가 존재하는데 왜 조건만 주면 나타나지 않는 걸까요? 여태 MS-SQL에서는 아무 문제없이 되었는데 오라클에서는 잘 안되는군요. 원인을 아신다면 꼭 부탁드립니다.
안녕하세요~ ^^;
저도 전에 같은문제로 고민한적이 있습니다.
그때는 PC 오라클에 파워빌더로 작성하던중이었는데요....
최혜정님과 똑같은 문제가 발생하였습니다. 한국오라클사에서도 모르더군요.
아직도 정확한 원인은 알수없지만 (오라클사에서는 된데요...)
언어가 한국어가 아닌 영어로 설정하면 되더군요.
아마 언어설정에도 원인이 있는것 같습니다.
정확한 답변이 못되었군요...죄송!