Я выкладываю это, чтобы надеяться попасть на правильный путь
Private Shared Sub Main(args As String())
Console.WriteLine("Demo: reader ")
' Connect
Dim connectStr As String = getConnection()
Dim SQL As String
SQL = "select STATUS , date1 , theTitle , theMessage , date2 , COUNT( * ) over( ) as countNum from (select TO_CHAR( level, '000' ) STATUS , sysdate date1 , level || 'aaa' theTitle , sysdate + 1 DATE2 , level || 'bbb' theMessage , count( * ) over( ) countRows from dual connect by level < 10 )"
Dim connection As New OracleConnection(connectStr)
Dim cmd As New OracleCommand(SQL, connection)
cmd.CommandType = CommandType.Text
Try
connection.Open()
Dim reader As OracleDataReader = cmd.ExecuteReader()
While reader.Read()
Console.WriteLine(reader(0))
Console.WriteLine(reader(1))
Console.WriteLine(reader(2))
Console.WriteLine(reader(3))
Console.WriteLine(reader(4))
Console.WriteLine(reader(5))
End While
Catch e As Exception
Console.WriteLine(e.Message)
End Try
Console.WriteLine("Done")
End Sub
теперь это работает (обратите внимание, мне пришлось изменить зарезервированное слово "date" на "date1"
иди и попробуй (или хотя бы запрос) и посмотри, работает ли он. если он запустится, то я подозреваю, что что-то не так с возвращаемыми данными запроса
сообщение об ошибке указывает, что в считывателе данных нет 5-го (или, возможно, 4-го) элемента