なんと、SUMでエラーになりやがりました。
{ ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Add("SELECT SUM(hoge) AS gokei"); ADOQuery1->SQL->Add("FROM hoge_tbl"); ADOQuery1->Open(); // ... // ... }とかやると、
「データ プロバイダまたはほかのサービスが E_FAIL 状態を返しました。」意味わかりませんがな。
pgAdminIII上ではOKなので、何がわるいのやらさっぱりだったのです。
Bigintだけが集計が出来ない模様。
VBでADO使ってる人がCOUNT()以外の集計関数でエラーになるという記事がネットであった。しかし、無回答
がしかし現象は同じなのでODBC関連ではないかと気づく。
そして、ODBCドライバがえらく古いことに気づく。
ODBCドライバを最新にすることであっさり解決。
7.01.00.06→8.02.04.00
PostgreSQL ODBCドライバ
http://www.postgresql.org/ftp/odbc/versions/msi/
ちなみに、
古いODBCドライバをアンインストール後、新しいドライバを入れると、 古いODBCドライバでシステムDSNに設定していた構成が消せ無かったのですが、(エラーになる)
新しいODBCドライバで再設定して保存すれば上書きされました。
最近テンパってるので、気づくのに時間かかります...やれやれ
ヽ( ´¬`)ノ