В C # я использую следующий метод:

я есть несколько хранимых процедур для выполнения этого использованияdbms_output.put_line() поместить данные в выходной буфер.

Я знаю, что мне нужно использоватьdbms_output.get_line(:line, :status) чтобы получить этот вывод. я используюSystem.Data.OracleClient чтобы избежать головной боли при развертывании Oracle.

Так что же я делаю не так с кодом ниже?

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

Ответы на вопрос(1)

Ваш ответ на вопрос