たとえば、私はこのコードを持っています:
Sub Month()
Dim Conn As New Data.OracleClient.OracleConnection
Conn.Open()
Try
Dim Cmd As New Data.OracleClient.OracleCommand
With Cmd
.Connection = Conn
.CommandType = Data.CommandType.Text
.CommandText = "SELECT * FROM MONTH"
End With
Dim datareader As Data.OracleClient.OracleDataReader = Cmd.ExecuteReader
While datareader.Read
Response.Write(datareader(0))
End While
Catch ex As Exception
Throw ex
Finally
Conn.Close()
End Try
End Sub
接続が閉じられたとき ( Conn.close )、データリーダーはどうなりますか?
datareader が使用する Cursor は解放されますか? それとも開いたままですか?
データリーダーが使用するカーソルがまだ開いている場合、いつ自動的に閉じられますか? または、手動で閉じる必要がありますか?
恐ろしい「ORA-01000: 開いているカーソルの最大数を超えました」が発生しますか?
前もって感謝します