Utilizando dbms_output.get_line en VB.NET
Tengo algunos procedimientos almacenados para ejecutar que usandbms_output.put_line()
para poner datos en el búfer de salida.
Sé que necesito usardbms_output.get_line(:line, :status)
para recuperar esa salida. Estoy usandoSystem.Data.OracleClient
para evitar dolores de cabeza con la implementación de Oracle.
Entonces, ¿qué estoy haciendo mal con el código a continuación?
Dim cmdSproc As OracleCommand = cnOracle.CreateCommand()
Dim strOracle As New OracleString()
Dim opaLine As New OracleParameter("lineOut", OracleType.VarChar, 255)
opaLine.Direction = ParameterDirection.Output
Dim opaStatus As New OracleParameter("status", 0)
cmdSproc.CommandText = "begin dbms_output.get_line(:lineOut,:status); end;"
cmdSproc.Parameters.Add(opaLine)
cmdSproc.Parameters.Add(opaStatus)
Dim strOutput As String = ""
strOracle = "0"
Try
While strOracle = "0"
cmdSproc.ExecuteOracleNonQuery(strOracle)
strOutput = strOutput & strOracle.ToString() & vbNewLine
End While
Catch ex As Exception
MsgBox(ex.Message)
End Try