請問sql語法的錯誤訊息 |
缺席
|
BOSS
中階會員 發表:70 回覆:79 積分:64 註冊:2006-11-01 發送簡訊給我 |
請問前輩
以下是我sql語法在執行時
會出現提供不一致或不完全的資訊導致參數物件不適當的被拒
with qryT do begin Close; SQL.Clear; SQL.Add('select pno_,pfno_,cname_ from pos_main '); SQL.Add(' where (datef_ >=:dt1 and expiredt_ >=:dt2) '); SQL.Add(' or (datef_ >=:dt1 and expiredt_ =-2) '); SQL.Add(' and pno_ in (select pno_ from dbo.fn_pos_main_byright(:userid,:prgid))'); SQL.Add('order by pfno_'); Parameters.ParamByName('dt1').Value:= edtFrom.Date; Parameters.ParamByName('dt2').Value:= edtto.Date; Parameters.ParamByName('userid').DataType:=ftString; Parameters.ParamByName('userid').Size:=10; Parameters.ParamByName('userid').Value:='kelvin'; Parameters.ParamByName('prgid').DataType:=ftInteger; Parameters.ParamByName('prgid').Value:=84008; Open; end; |
yachanga
資深會員 發表:24 回覆:335 積分:296 註冊:2003-09-27 發送簡訊給我 |
Hi BOSS您好:
小弟看不太懂您的語法, 您試試看把這句拿掉(:userid,:prgid))
看看可不可以用....
with qryT do begin Close; SQL.Clear; SQL.Add('select pno_,pfno_,cname_ from pos_main '); SQL.Add(' where (datef_ >=:dt1 and expiredt_ >=:dt2) '); SQL.Add(' or (datef_ >=:dt1 and expiredt_ =-2) '); SQL.Add(' and pno_ in (select pno_ from dbo.fn_pos_main_byright)'); SQL.Add('order by pfno_'); Parameters.ParamByName('dt1').Value:= edtFrom.Date; Parameters.ParamByName('dt2').Value:= edtto.Date; Open; end;如果您想要抓出符合條件 試試看 with qryT do begin Close; SQL.Clear; SQL.Add('select pno_,pfno_,cname_ from pos_main '); SQL.Add(' where (datef_ >=:dt1 and expiredt_ >=:dt2) '); SQL.Add(' or (datef_ >=:dt1 and expiredt_ =-2) '); SQL.Add(' and pno_ in (select pno_ from dbo.fn_pos_main_byright where :userid and prgid=:prgid)'); SQL.Add('order by pfno_'); Parameters.ParamByName('dt1').Value:= edtFrom.Date; Parameters.ParamByName('dt2').Value:= edtto.Date; Parameters.ParamByName('userid').Value:='kelvin'; Parameters.ParamByName('prgid').Value:=84008; Open; end;~悠遊法國號~ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |