1. 程式人生 > >delphi 7連線oracle資料庫問題

delphi 7連線oracle資料庫問題

ADOQuery1: Parameter 'a_id' not found問題


遇到此報錯,首先要查詢是否欄位拼寫問題或者繫結變數時確實“:”,排除這個之後再嘗試以下方法。


1.Delphi 7連線oracle資料庫時沒有Oracle Provider for OLE DB選項

用Microsoft OLE DB Provider for Oracle 連線資料庫時,偶爾會報錯,是因為這個驅動不支援blob欄位,查詢有blob欄位的表示就會報錯。這時候選擇Oracle Provider for OLE DB連線方式就不會有問題。

但如果Delphi中找不到Oracle Provider for OLE DB連線方式怎麼辦?

有2種方法:(我只驗證了a方法,b方法為網路上的方法,未親自驗證)我本機安裝的是Oracle 11g 64位的

a.安裝Oracle 11g 32位客戶端,下載地址http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098987.html

選擇如下圖片中的檔案:

b.安裝ODAC工具,下載地址http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html


2.使用Oracle Provider for OLE DB方式連線資料庫時,依然報找不到欄位的錯誤時,看ADOQuery控制元件的ParamCheck屬性是否設定為true,如果為false,則在繫結變數之前還要加上ADOQuery2.Parameters.ParseSQL(ADOQuery2.SQL.Text, True);該引數為true時不需要該語句。


以上純屬個人經驗,如有錯誤,敬請指正!