[pgsql-jp: 35643] Re: ASP と postgreSQL803 での SQL 実行エラー

T.Suzuki t_suzuki @ kenwood-eng.co.jp
2005年 7月 1日 (金) 10:50:52 JST


鈴木@KEGと申します。

wrote: みやびさん
> > log_statement = 'all'
> 
> 設定し、Logを見てみると
> ---全内容
> select version()
> set DateStyle to 'ISO'
> set geqo to 'OFF'
> set extra_float_digits to 2
> select oid from pg_type where typname='lo'
> select pg_client_encoding()
> set client_encoding to 'SJIS'
> set client_encoding to 'SJIS'
> select * from testtab1
> ---全内容
> とLogに吐き出され、SQL文は正常にPostgreSQL側に
> 発効されているようなのですが。。。

Executeは正しく発行されているようですね。
となると、プログラムを疑ってみます。

wrote: みやびさん [pgsql-jp: 35570]
> set rs = cn.Execute("select * from FileDat2")
> if err <> 0 then
>   Response.Write "SQL発効エラー"

Executeの戻り値を0以外はエラーとしていますが、
Executeは、Recodesetを返すので、正常にSELECTが実行された場合、
「0以外になる」という条件が成立してしまうと思います。

# 「rs.EOF」 を使って、Recodesetの件数をチェックするのが正しい…?
# ADO は忘れていて、始めに気がつきませんでした

> > テーブル名が大文字と小文字を混ぜて使われている点が気になります。
> > "FileData2" とクォートするとどうでしょうか?

クォートの件は、プログラムを直した後で、比較されると良いでしょう。

 -----------------------------------------
      鈴木 徹 (SUZUKI Toru)
      Kenwood Engineering Corporation.
      E-mail:t_suzuki @ kenwood-eng.co.jp
 -----------------------------------------



pgsql-jp メーリングリストの案内