I’m now working on vbscript to do some test. Actuelly, I want to retrieve a large amount of data from an oracle database, so I write the code like this:
sql = "Select * from CORE_DB where MC = '" & mstr & "' "
Set myrs = db_execute_query(curConnection, sql)
Then I count the rows in myrs,there are 248 rows. So then I do a For loop to retrieve some fields of each row.
For k = 0 To db_get_rows_count(myrs)
But then I found that the content of the row k when k > 133 was always equal to k = 133. So this makes an error.
The db_execute_query function is like
Function db_execute_query ( byRef curSession , SQL)
set rs = curSession.Execute( SQL )
set db_execute_query = rs
End Function
The db_get_rows_count function is like
Function db_get_rows_count( byRef curRS )
dim rows
rows = 0
db_get_rows_count = rows
curRS.MoveFirst
Do Until curRS.EOF
rows = rows+1
curRS.MoveNext
Loop
db_get_rows_count = rows
End Function
As I think, there may be a limit size of mrys ? Could anyone light me about this? Thanks a lot in advance
It would be useful to know what’s actually in the database. Can you connect to your database using some other tool (SQLPlus, PL/SQL Developer, Toad, etc) and execute your query? And if you do so, do the results match those that you get when you execute your query through VBScript?
Also, do you get an error from the database? That might help determine what’s going on.