
実行環境は、WindowsXP,VB6(SP6),Oracle10gで、oradc.ocxを使ってoo4接続しています。
SELECT実行時は、ORA_DYNASET.Fieldsを参照して.VALUEから検索結果値を取得しています。
今まで、LONG型フィールドは何もせずに値の取得が可能でしたが、
CLOB型に変更したことにより、ここでエラーが発生するようになりました。
CLOBのフィールドにto_char関数をかけると、.VALUE参照時のエラーは無くなりましたが、データが4000バイトで切れてしまいます。
現在当方での唯一の回避策は、CLOB型フィールド名を"A"とすると、
to_char(substr(A,1,4000)),
to_char(substr(A,4001,4000)),
to_char(substr(A,8001,4000)) ・・・・・
といった形でのSELECT文をきる事になります。
そもそもは、.VALUEプロパティ参照時のエラーを無くしたいのですが、無くす方法、又は、それにみあう代替策をご存知の方は教えてください。
※なお、LONG型の場合も、10gになってからはデータが4000バイトで切れるとの報告も受けております。最初はTO_CHAR関数のせいだと思っていましたが、VB側のオブジェクトの壁なのでしょうか・・・
No.1ベストアンサー
- 回答日時:
OraField オブジェクトの .GetChunk() を使用するか、OraCLOB オブジェクトを使用してみてはどうでしょうか
?この回答への補足
質問者です。大変遅くなりましたが、ご回答のお礼を申し上げます。有難うございました。
substrで切り取る方法を採用していたのですが、問題がありました(substrの結果、4001バイト目以降付近でデータが壊れるなど。切り取るデータに日本語文字列等が混在していたらなおまずい)。
最終結果を申し上げますと、
クライアントインストールフォルダ配下に入っている\oo4o\VB\SAMPLES\LOBコーディングを参考にして(明示的にCLOB型宣言されたバインド変数に受け取る方法)問題解決いたしました。
上記フォルダの存在を今回はじめて知りましたので、ご存知無いかたは参考まで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
Excelでフィルタをかけると警告...
-
VBAで既に開いている別アプリケ...
-
テキストボックス中の文字列の...
-
Excel VBAでIEにアクセスするプ...
-
「オブジェクト変数または With...
-
実行時エラー 3265「要求された...
-
UserForm1.Showでエラーになり...
-
AccessVBAで「dim dbs as datab...
-
アクセスにてオブジェクト名変...
-
textBox isNot Nothing とは
-
ExcelVBAでのNZ関数について
-
VBAからPDFファイルにパスワー...
-
ADO 「NEW」の意味、必要性
-
エクセル/保護したシート上の埋...
-
EXCEL VBA オートシェイプナン...
-
エクセルマクロエラー「'Cells'...
-
(初心者です)VBAについて。「実...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
テキストボックス中の文字列の...
-
エクセルのVBAの標準モジュール...
-
Excelでフィルタをかけると警告...
-
実行時エラー 3265「要求された...
-
上下の位置揃えについて
-
ExcelVBAでのNZ関数について
-
VBAで既に開いている別アプリケ...
-
VBAで Set wb = Sheets(1).Cop...
-
AccessVBAで「dim dbs as datab...
-
EXCEL VBA オートシェイプナン...
-
オブジェクト変数またはWITHブ...
-
[VBA]CDOメッセージ送信エラー
-
エクセルマクロエラー「'Cells'...
-
findメソッドの変数について
-
オブジェクトが見つかりません
-
ある文字列が全て数字であるか...
-
オブジェクト変数の取得について
-
CreateObjectとGetObjectの違い
おすすめ情報