Query 구문에 CASE를 이용하여 데이터를 가지고 오려고 합니다. 그런데, 'Invalid use of keyword. Token: WHEN'이라는 에러가 발생합니다. 아무리 책이나 인터넷을 찾아봐도 Paradox와 Case에 대한 답이 없네요. 'WHEN'에서 문제가 생기는 것 같은데 도무지 모르겠네요. 부탑드립니다.
DB는 Paradox입니다. 소스는 다음과 같습니다.
Var
sQry: string;
tempQry: TQuery;
Begin
tempQry := TQuery.Create(nil);
with tempQry do
begin
DatabseName := 'BBData';
sQry := 'SELECT TA.PONo, TA.OrdQty, TA.OrdAmount, TB.Company,'
+ 'CASE TA.OrdType WHEN "I" THEN "Inventory" ELSE "Special" END OrderType '
+ 'FROM Orders TA LEFT OUTER JOIN Customer TB ON TA.CustID=TB.CustID '
+ 'WHERE PONo=' + fldPONo.Text;
SQL.Clear;
SQL.Add(sQry);
Prepare;
Open;
if isEmpty then
messageDlg('No data',mtInformation,[mbOk],0)
else
showQuery;
end;
tempQry.Free;
End;