線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1339
推到 Plurk!
推到 Facebook!

請教日期比對為何是相同字串還會出現錯誤?

答題得分者是:Stallion
K1086
初階會員


發表:63
回覆:148
積分:42
註冊:2007-04-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-23 20:02:51 IP:220.131.xxx.xxx 訂閱
<textarea class="delphi" rows="10" cols="60" name="code"> STDY:=COPY(DATETOSTR(Date_1.Date),1,4); STDM:=COPY(DATETOSTR(Date_1.Date),6,2); STDD:=COPY(DATETOSTR(Date_1.Date),9,2); // showmessage(STDY); STAA:= STDY STDM STDD; showmessage(STAA); QUERY1.Close; QUERY1.SQL.CLEAR; QUERY1.SQL.ADD('SELECT * FROM Twn_Date WHERE '); QUERY1.SQL.ADD('Date<=''' STAA ''' '); QUERY1.SQL.ADD('ORDER BY Date ASC'); QUERY1.OPEN; QUERY1.NEXT; Edit1.Text := QUERY1.FIELDBYNAME('Date1').Value; Lab_S.Caption:=QUERY1.FIELDBYNAME('NAME1').Value; Lab_T.Caption:=QUERY1.FIELDBYNAME('NAME2').Value; Lab_G.Caption:=QUERY1.FIELDBYNAME('NAME3').Value; </textarea>
問題是Tabel(Twn_Date) 的Date1由19000101 ~ 20301231 而STAA所轉換的也跟Date1資料一樣為何還是出錯誤,被迫中斷呢?? =====>請教各位先進指導後學,謝謝!
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-23 21:33:03 IP:211.22.xxx.xxx 未訂閱
年月日這樣取出會有問題吧!
uses
DateUtils
然後查一下 Yearof, MonthOf, DayOf函數。

另外你是用啥資料庫?欄位名稱以Date來命名可能會衝到關鍵鍵最好以[Date]中刮號刮起來,另外該欄位[Date]的型態是日期型態嗎?總之:
1.欄位的型態應該是日期型態才好。
2.搜尋日期區間以BETWEEN來找比較適合,配合動態變數的寫法更容易撰寫,搜一下KTOP吧,範例很多~
K1086
初階會員


發表:63
回覆:148
積分:42
註冊:2007-04-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-23 21:58:07 IP:220.131.xxx.xxx 訂閱
謝謝您 細心觀查到 小弟確實是用 dBASE 我把 DATE 改成 DATE_W 就可以 RUN 難怪人說 
小心不蝕本 哈哈!!
3Q 3Q!!
系統時間:2024-05-19 7:26:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!