有使用 ORACLE 和 DELPHI 的高手嗎,怪問題請教 |
缺席
|
GiABin
一般會員 發表:6 回覆:8 積分:2 註冊:2002-11-11 發送簡訊給我 |
各位前輩: 不知你有沒有遇過這個錯誤,我不清楚是 Oracle 或是 BDE 造成的,
所以就問一問. SQL 如下: Sqltext:='select * from (select * from TableA@OLD where FieldX=:Param1 and FieldY=:Param2) '+
'where FieldZ=:Param3'; 傳入三個參數 OPEN 後的錯誤訊息 Project Project1.exe raised exception class EDBEngineError withmessage
'General SQL error.
ORA-01460: 不實施或不合理的轉換請求 (英文的意思是 unimplemented or unreasonable conversion
requested)
ORA-02063: 在 line 之前, 自 OLD'. Process stopped. Use Step or Run to continue. 這是什意思? 我咧... 我的測試環境是 連結的資料庫 FieldX=' ' FieldY=' ' FieldZ=' '
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
請問一下, 傳參數進去的方法是什麼嗎?
看錯誤訊息可能是型態的問題, 可以試著
從這裡來解決.
例如:
query1.ParamByName('Param1').AsDateTime := DateTimePicker1.Date; query1.ParamByName('Param2').AsDateTime := DateTimePicker2.Date; query1.ParamByName('Param3'').AsInteger := StrToInt(Edit1.Text); |
GiABin
一般會員 發表:6 回覆:8 積分:2 註冊:2002-11-11 發送簡訊給我 |
各位前輩:
三個參數都是字串,語法也沒有問題,如下:
query1.ParamByName('Param1').AsString:='A';
query1.ParamByName('Param2').AsString:='B';
query1.ParamByName('Param3').AsString:='C'; TParam.datatype/paramtype property 也有指定,
我的情況還是一樣,所以我就懷疑是 Oxx or Bxx
的 bug 或版本上的不相容, 不知道有沒有人有
其他的看法, 這問題超奇怪的.... 問的好得 40 分,答的好得 60 分,那就 滿分了
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
GiABin
一般會員 發表:6 回覆:8 積分:2 註冊:2002-11-11 發送簡訊給我 |
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
引言: 各位前輩; 根據您們建議還是不行(只傳一個參數是可以的,我覺得是@OLD的影響) 不過還是謝謝您,感恩啊 PS: 不知道您們知不知道哪個資料庫的網站也有做 good FAQ? 可否告知一下... 問的好得 >>< face="Verdana, Arial, Helvetica"> 嗯...有可能, OLD 在 Oracle Row Trigger 中是 reserved key word. 換個 Database link name 看看. /* Free 和 Create 一樣重要 */ |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |