全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3182
推到 Plurk!
推到 Facebook!

日期該如何給空值呢??

尚未結案
jch
中階會員


發表:111
回覆:224
積分:66
註冊:2003-12-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-15 18:08:04 IP:61.221.xxx.xxx 未訂閱
如題 ParamByName('validiay').AsDateTime := ?? 此一欄位該如何給予空值呢?? ======================== 我是DELPHI5的初學者
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-15 18:11:25 IP:210.66.xxx.xxx 未訂閱
ParamByName('validiay').Value := Null; 參考看看! Ian
jch
中階會員


發表:111
回覆:224
積分:66
註冊:2003-12-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-15 20:15:32 IP:61.70.xxx.xxx 未訂閱
小弟試過 ParamByName('validiay').AsDateTime:=null; 結果出現錯誤!! ParamByName('validiay').Value := Null; 還是一定要使用Value呢?? ======================== 我是DELPHI5的初學者
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-15 22:51:46 IP:61.62.xxx.xxx 未訂閱
Hi, 這是因為未指定資料型態的問題, 是否要給 null , 則沒有太大關係. 預設即為 null, 於新增或異動時, 將對應資料型態給定即可:    
  ParamByName('validiay').DataType := ftDateTime;
  ParamByName('validiay').Value := Null; // 此行可有可無, 若是未給定預設值時!
另外要注意的是這種 null 的用法僅能對 update, insert 才行哦! 對 select 無效的! HELP 中的敘述: Parameters used in SELECT statements cannot be NULL, but they can be NULL for UPDATE and INSERT statements.
jch
中階會員


發表:111
回覆:224
積分:66
註冊:2003-12-01

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-16 09:04:04 IP:163.17.xxx.xxx 未訂閱
多謝兩位大哥的回覆,可惜只有一人可以得分..... 還是很感激l630521 大哥!! ======================== 我是DELPHI5的初學者
jch
中階會員


發表:111
回覆:224
積分:66
註冊:2003-12-01

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-03-16 09:35:10 IP:163.17.xxx.xxx 未訂閱
if q1.FieldByName('validiay').AsDateTime > 1 then       ParamByName('validiay').AsDateTime:= q1.FieldByName('validiay').AsDateTime     else       ParamByName('validiay').Value:= Null; 卻出現validiay is of an unknown type 的錯誤??? (小弟是使用BDE) ======================== 我是DELPHI5的初學者
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-03-16 09:59:37 IP:203.95.xxx.xxx 未訂閱
引言:卻出現validiay is of an unknown type 的錯誤???
因為你沒有給定 DataType 啊. 所以會有這個錯誤. 另外若是要判斷 query 回來的值是不是 null 可以用 IsNull 來判定, 如:
if not q1.FieldByName('validiay').IsNull then
.....
這樣應該會比較好. 否則 null cast 成 Datetime 也不是很理想的作法!
系統時間:2024-05-14 21:21:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!