此錯誤訊息要如何處理 |
答題得分者是:kevin2004
|
limary
初階會員 發表:41 回覆:109 積分:30 註冊:2007-01-11 發送簡訊給我 |
各位前輩:
小妹在Access/MSSQL寫了幾個系統,最近試者將之轉移到WinPostgreSQL 上來執行。我有些Form是用Ado,有些Form是用BDE聯接。會出現以下的訊息而 當機:『提供不一致或不完全的資訊,導致參數物件不適當地被拒』。 我仔細看過好幾遍我的表格結構,它確定是很常見很標準的Int/Char/VarChar 等等,這些是很多資料庫都接受的欄位型態,所以應該不是造成問題的原因。 而且很奇怪,有的Form可以開表,有的就不行而當出來了。我仔細去看這些 有問題的表格結構,發現它們也是很普通很常見的欄位型態,所以應該不是由 Access/MSSQL移到PostgreSQL後型態的問題。 我試了好幾個星期了,無法解決,可否請前輩幫忙指點一下。謝謝。 |
darnell
版主 發表:25 回覆:103 積分:145 註冊:2003-03-04 發送簡訊給我 |
依據妳所提的錯誤訊息請檢查Query之類的物件應該有傳入Param吧
將DataType(若型態是字串則ftstring),Size,Value的Type(若型態是字串則OleStr) 看看是不是有漏掉沒設定好的地方 另外印象中ado好像很難連結postgres吧?你是如何連結?? 想要使用postgres建議使用zeoslib元件來做連結 |
limary
初階會員 發表:41 回覆:109 積分:30 註冊:2007-01-11 發送簡訊給我 |
|
limary
初階會員 發表:41 回覆:109 積分:30 註冊:2007-01-11 發送簡訊給我 |
|
darnell
版主 發表:25 回覆:103 積分:145 註冊:2003-03-04 發送簡訊給我 |
這是依據妳之前說的錯誤訊息『提供不一致或不完全的資訊,導致參數物件不適當地被拒』所做的推斷
因為如果DataSet中的sql語法用到動態參數傳入比如select * from xxx where id=:id 那就需要設定DataSet中的param的參數項目,如果設定錯誤,比如將string設定成int 就會出現你說的訊息,但是如果你之前已經運作正常,只是因為換了資料庫就出現錯誤 可能就是資料庫結構的差異在adoDataSet原始碼中沒有被適當做處理(畢竟ado物件還是比較適用於Mssql), 因此基本上還是建議妳採用zeoslib元件比較不會產生奇怪的錯誤訊息 ===================引 用 limary 文 章=================== 是否能請前輩能再仔細說明一下,小妹有點不太懂 先謝謝了 |
kevin2004
資深會員 發表:18 回覆:463 積分:416 註冊:2005-05-29 發送簡訊給我 |
Access/MSSQL...轉移到WinPostgreSQL上來執行。...會出現以下的訊息而
當機:『提供不一致或不完全的資訊,導致參數物件不適當地被拒』。 ====>小弟補充一下,試在長好此AdoQuery1的SQL後加以下碼: for II := 0 to AdoQuery1.Parameters.Count -1 do begin if AdoQuery1.Parameters.Items[II].DataType = ftunKnown then AdoQuery1.parameters.items[II].DataType := ftString ; end ; ====>應該就可以了 有些Form是用Ado,有些Form是用BDE聯接。 ====>ADO確定是沒問題,可是BDE我就太久太久沒用了,不太有把握。 ====>剛才試了一下,Query是沒有parameters這個項,而是Params, ====> 所以相關碼要改成這個才行通過Compiler。我也試者要降在Query ====> 的環境產生你講的錯誤訊息,以測試此方是否可用,可是實在是沒 ====> 玩BDE太久太久,一下子測不出來確定的訊息。 ====>不過,在Ado環境下,我剛才講的,確定沒問題。
------
Kevin
編輯記錄
kevin2004 重新編輯於 2008-10-25 05:57:17, 註解 無‧
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
kevin2004
資深會員 發表:18 回覆:463 積分:416 註冊:2005-05-29 發送簡訊給我 |
|
limary
初階會員 發表:41 回覆:109 積分:30 註冊:2007-01-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |