ADODB.RecordSetからデータを取得するには

解決


おん  2004-03-04 21:05:23  No: 82399  IP: [192.*.*.*]

初めましておんです。

ADODB.RecordSetオブジェクトから
下記のように、カレントレコードのREGIST_DATEカラムを取得したい場合に

rs![REGIST_DATE]

といった記述をすると思うのですが、
これを変数によってアクセスしようとした場合

Const strREGIST_DATE As String = "REGIST_DATE"
....
rs![strREGIST_DATE]

としたところ、[ と ] の間が変数としてではなく文字列として
解釈されてしまい、うまくいきません。
また、[ と ] を外した場合もうまく行きません。
(そもそも、[]を使用する場合と使用しない場合の違いもわかっていません。)
変数(定数)を使用してデータを取得する場合は、
どのような記述を行えばよいでしょうか?

以上、よろしくお願いします。

編集    削除
通りすがり  2004-03-04 21:35:46  No: 82400  IP: [192.*.*.*]

rs.Fields(strREGIST_DATE).Value

編集    削除
おん  2004-03-04 22:01:10  No: 82401  IP: [192.*.*.*]

rs.Fields(strREGIST_DATE).Value
で取得することができました。
RecordSet.Fields(Collectionオブジェクト)に対して、
カラム名をキーに ADODB.Field.Value プロパティを取得しているんですね。

有難うございました。

編集    削除
ACCESS  2004-06-17 02:58:41  No: 82402  IP: [192.*.*.*]

ADODB経由でACCESSにLike演算子を含んだSQLを発行してもうまく結果がとれません。なぜでしょうか?
ちなみにACCESSのクエリーではきちんとできました。

編集    削除
nanashi  2004-06-17 03:03:15  No: 82403  IP: [192.*.*.*]

そのSQL文を見ないと分かりませんが、たぶんワイルドカードの指定が間違ってるんだと思います。
『*』を『%』、『?』を『_』に変更してみて下さい。

編集    削除
ACCESS  2004-06-17 03:21:40  No: 82404  IP: [192.*.*.*]

できました。早々のレスありがとうございました。

編集    削除