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

Delphi2005 使用sql.add時發生問題

尚未結案
andy0412
一般會員


發表:22
回覆:12
積分:11
註冊:2004-03-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-20 15:01:02 IP:220.130.xxx.xxx 未訂閱
Dear All. 我的Wn是有值的,但此語法在Delphi 6使用是可以的。但我改至Delphi2005時 傳入Wn的值竟然是Null... 請問這是不是我有寫錯指令呢? DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Pipe_Meter_Wn(Wn) VALUES(:Wn)');
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-20 15:14:24 IP:202.62.xxx.xxx 未訂閱
您好﹗    DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Pipe_Meter_Wn_(Wn) VALUES(:Wn)'); 紅色下劃線處為一個空格﹒ ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
andy0412
一般會員


發表:22
回覆:12
積分:11
註冊:2004-03-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-20 15:26:04 IP:220.130.xxx.xxx 未訂閱
引言: 您好﹗ DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Pipe_Meter_Wn_(Wn) VALUES(:Wn)'); 紅色下劃線處為一個空格﹒ ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
procedure TPipe_MeterM1.bt_AddClick(Sender: TObject); var Prod_No,Spec_No,Wn,Cal_C : String; begin Prod_No := trim(DBEdit1.Field.Text); Wn := Edit1.Text; Cal_C := Edit2.Text; >_< 還是null 值 DMProduction.ADOQ_Tmp.SQL.Clear; ShowMessage(Prod_No); DMProduction.ADOQ_Tmp.Close; DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Wn (Prod_No) VALUES(:Wn)'); ShowMessage(Prod_No); DMProduction.ADOQ_Tmp.ExecSQL; 發表人 - andy0412 於 2005/07/20 15:31:43
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-20 16:05:30 IP:202.62.xxx.xxx 未訂閱
您好﹗    修正為以下紅色處﹕
procedure TPipe_MeterM1.bt_AddClick(Sender: TObject);
var
  Prod_No,Spec_No,Wn,Cal_C : String;
begin
  Prod_No := trim(DBEdit1.Field.Text);
  Wn := Edit1.Text;
  Cal_C := Edit2.Text;      DMProduction.ADOQ_Tmp.Close;  
  DMProduction.ADOQ_Tmp.SQL.Clear;
  DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Wn (Prod_No) VALUES('''+Wn+''')');
  DMProduction.ADOQ_Tmp.ExecSQL;
end;
或者﹕
procedure TPipe_MeterM1.bt_AddClick(Sender: TObject);
var
  Prod_No,Spec_No,Wn,Cal_C : String;
begin
  Prod_No := trim(DBEdit1.Field.Text);
  Wn := Edit1.Text;
  Cal_C := Edit2.Text;      DMProduction.ADOQ_Tmp.Close;  
  DMProduction.ADOQ_Tmp.SQL.Clear;
  DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Wn (Prod_No) VALUES(:Wn)');
  DMProduction.ADOQ_Tmp.Parameters.ParamByName('Wn').Value := Wn;
  DMProduction.ADOQ_Tmp.ExecSQL;
end;
================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
likush
高階會員


發表:5
回覆:235
積分:103
註冊:2002-10-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-07-20 16:39:26 IP:218.163.xxx.xxx 未訂閱
小弟愚見,試試看
  ShowMessage(Pro_No   " - "  Wn)
  DMProduction.ADOQ_Tmp.Close;  
  DMProduction.ADOQ_Tmp.SQL.Clear;
  DMProduction.ADOQ_Tmp.SQL.add('INSERT INTO Wn (' Prod_No ') VALUES("' Wn '" )');
  DMProduction.ADOQ_Tmp.ExecSQL
照您所說WM有值但所得為NULL,但依您程式相當單純,您可試著設中斷除錯方式來找出問題點。 ========================= 讀萬卷書~不如來K.TOP走一遭 =========================
系統時間:2024-11-25 0:32:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!