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

有關 Query1->Params->ParamValues["vCM"] 的問題

尚未結案
physics
一般會員


發表:11
回覆:11
積分:9
註冊:2002-05-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-12-26 08:44:26 IP:68.38.xxx.xxx 未訂閱
小弟有一個非常困擾的問題請教: String SqlStr = "INSERT INTO Table1 (Measure_CM) VALUES (vCM)"; Query1->SQL->Add(SqlStr); Query1->Params->ParamValues["vCM"] = 1.034; 結果 Database 裡面只出現 1.000 而不是 1.034 請問這是怎麼一回事? String SqlStr = "INSERT INTO Table1 (Measure_CM) VALUES (1.034)"; 我試過以上 code, 結果是正確的. 是不是 ParamValues["vCM"] 得指定為 float 或是怎麼的??? 感謝幫忙!
wyvern
一般會員


發表:19
回覆:31
積分:15
註冊:2003-06-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-12-26 21:38:09 IP:220.134.xxx.xxx 未訂閱
應該是要指定:
String SqlStr = "INSERT INTO Table1 (Measure_CM) VALUES (:vCM)";
TParam *newParam = Query1->Params->CreateParam(ftFloat, "vCM", ptInput);
newParam->AsFloat = 1.034;
Query1->SQL->Add(SqlStr);
physics
一般會員


發表:11
回覆:11
積分:9
註冊:2002-05-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-12-27 13:31:14 IP:68.38.xxx.xxx 未訂閱
感謝感謝. 雖然還是不行, 我想是資料系統與 BDE 之間的不協調性吧. 我連結的是 Pervasive Database, 而資料的型態是 Decimal(7,3). 或許 BDE 在處理這種資料時有困難. Anyway, 抓破了頭, 只好捨棄 Params->ParamValues[] 等等的不用, 直接把所有的變數轉成 String 加到 SQL 裡去, 這樣就 Work 了. 如果各位仁兄還有別的解法, 也請不吝示教.
系統時間:2024-05-19 4:17:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!