C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 29 を表示中)
■13577 / )  Re[1]: VB6 ORACLEのBLOB型チェックについて
□投稿者/ 七曜 (60回)-(2008/01/31(Thu) 17:19:06)
No13574 (sada さん) に返信
ORACLE環境もVB6.0環境もないので推測でしかありませんが、

> 下記ロジックでは、
>
> If IsNull(RecSet.Fields(2).Value) = True Then
> 'データが無い!!

VB系はデフォルトだと配列は1から始まったと思いますので、これだと2番目を指していますよね。

> で、データがNULLにも関わらず、ELSEの方へ処理が移行してしまいます。
> 'BLOB列を含むSELECT文
> strSQL = " SELECT TEMPNO , " & _
> " EXPLANATION , " & _
> " ATTACHEDCHART , " & _
> " UPDPRSNLID , " & _
> " UPDDATE , " & _
> " INSPRSNLID , " & _
> " INSDATE " & _
> " FROM MTEMP " & _
> " WHERE TEMPNO ='" & strConvert & "'"

このSQL文の2番目の要素は、EXPLANATIONだと思われます。

> '説明
> If Not IsNull(RecSet.Fields("EXPLANATION").Value) Then
> txtTEMPSetumei.Text = RecSet.Fields("EXPLANATION").Value
> End If

ここでは、フィールド名で取得しているのに・・・

> '添付図オブジェクト
> 'BLOB型にデータがあり??
> If IsNull(RecSet.Fields(2).Value) = True Then
> 'データが無い!!
> Else

ここでは、フィールドコレクションの2番目で取っていますよね。
RecSet.Fields(2)の内容をステップ実行で確認すると良いかと思いますが
おそらく、RecSet.Fields("EXPLANATION")と一緒だと思われます。

BLOBとして評価したいのは、ATTACHEDCHART だと思われますので、
RecSet.Fields(3) か RecSet.Fields("ATTACHEDCHART")
とすればよろしいのではないでしょうか。



返信 編集キー/


管理者用

- Child Tree -