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

function 在 sql 敘述中

 
markgau
一般會員


發表:4
回覆:10
積分:2
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-14 13:57:52 IP:211.23.xxx.xxx 未訂閱
小弟寫了一個function是拿來取出ADOQuery的值 function TForm1.getADOQValues(FieldName: string): string; begin with adoquery1 do begin Result := FieldByName(FieldName).AsString; end; end; 另外,在button1的OnClick事件中做 with adoquery2 do begin close; sql.Clear; sql.Add('insert into table1( FieldB1, FieldB2, FieldB3)'); sql.Add(' values( '#39 getADOQValues(FieldA1) #39', '#39 getADOQValues(FieldA2) #39', '#39 getADOQValues(FieldA3) #39')'); execsql; end; 在compile時,會出現Undeclared identifier:'FieldA1',Undeclared identifier:'FieldA2'及Undeclared identifier:'FieldA3'的錯誤 小弟知道是要在FieldA1,FieldA2,FieldA3中加入引號,但一旦加入引號,FieldA1,FieldA2,FieldA3便會被誤判成是sql的敘述。請問小弟該如何做? It's me, but it's also not me. 發表人 - markgau 於 2002/08/14 13:58:20
------
Its me, but its also not me.
cubi
初階會員


發表:56
回覆:94
積分:35
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-14 14:23:28 IP:61.58.xxx.xxx 未訂閱
引言: 小弟寫了一個function是拿來取出ADOQuery的值 function TForm1.getADOQValues(FieldName: string): string; begin with adoquery1 do begin Result := FieldByName(FieldName).AsString; end; end; 另外,在button1的OnClick事件中做 with adoquery2 do begin close; sql.Clear; sql.Add('insert into table1( FieldB1, FieldB2, FieldB3)'); sql.Add(' values( '#39 getADOQValues(FieldA1) #39', '#39 getADOQValues(FieldA2) #39', '#39 getADOQValues(FieldA3) #39')'); execsql; end; 在compile時,會出現Undeclared identifier:'FieldA1',Undeclared identifier:'FieldA2'及Undeclared identifier:'FieldA3'的錯誤 小弟知道是要在FieldA1,FieldA2,FieldA3中加入引號,但一旦加入引號,FieldA1,FieldA2,FieldA3便會被誤判成是sql的敘述。請問小弟該如何做? It's me, but it's also not me. 發表人 - markgau 於 2002/08/14 13:58:20
應該是要加上單引號,試試看 sql.Add(' values( '#39 getADOQValues('FieldA1') #39', '#39 getADOQValues('FieldA2') #39', '#39 getADOQValues('FieldA3') #39')');
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-08-15 13:36:45 IP:61.220.xxx.xxx 未訂閱
應該是引號加錯地方了 試試看這樣可不可以 sql.Add(' values( #39''' getADOQValues(FieldA1) '''#39, #39''' getADOQValues(FieldA2) '''#39, #39''' getADOQValues(FieldA3) '''#39)'); 回首來時路 也無風雨也無晴~~@.@
------
天行健
君子當自強不息~~@.@
系統時間:2024-03-29 23:15:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!