VB6でのSQL実行について
VB6でのSQL実行について困っています。
SQL文を作成し、ダイナセットで実行している最中にも
再度別のSQL文をダイナセットで実行することは可能なのでしょうか?
言語はVB6.0、DBはOracle9iを使用しています。
イメージ的にはこんな使い方をしたいです。
dim lngRecordRow1 as long 'レコード数1
dim lngRecordRow2 as long 'レコード数2
dim OraDynaset1 As OraDynaset
dim OraDynaset2 As OraDynaset
dim strSQL as string 'SQL文
dim lngCnt1 as long 'ループカウンタ1
dim lngCnt2 as long 'ループカウンタ2
strSQL= ---SQL文作成1回目---
Set OraDynaset1 = OraDatabase.CreateDynaset(strSQL, ORADYN_READONLY) 'SQL文実行1回目
lngRecordRow1 = OraDynaset1.RecordCount
for lngCnt1 = 1 to lngRecordRow1
'--- 処理 ---
strSQL= ---SQL文作成2回目---
Set OraDynaset2 = OraDatabase.CreateDynaset(strSQL, ORADYN_READONLY) 'SQL文実行2回目
lngRecordRow2 = OraDynaset2.RecordCount
for lngCnt2 = 1 to lngRecordRow2
'--- 処理 ---
next lngCnt2
next lngCnt1
1回目で取得したSQL実行結果を行単位でループをまわしつつ、1回目で取得したレコードの結果を条件に使用して別のSQL文を作成し、ループをまわしている最中に実行したいです。
その際、2回目のSQLの結果が2レコード以上の場合、さらにループをまわして条件判別をしたいです。
かなり困っています。回答待ってます。
補足
諸都合によりDBの中身が見れないので、 SQL部分でエラーとなると原因究明に時間がかかるため 何とか小出しにSQLを作成したいです。 (1つにまとめると条件が複雑で辛い)