Lenguaje de programación Visual Basic
Este ejemplo en Visual Basic 6 muestra cómo acceder al contenido de un campo de Oracle de tipo LONG. Este tipo de datos no es accesible directamente con Visual Basic, hay que obtener previamente el tamaño ocupado con "ColumnSize" y posteriormente, con la propiedad "GetChunk", pasándole como parámetro el tamaño obtenido con "ColumnSize".
En este ejemplo será necesario tener instalado el driver ODBC correspondiente de Oracle y también creado el origen de datos en "Orígenes de datos (ODBC)" (Herramientas administrativas).
En el formulario de Visual Basic hemos añadido un componente de tipo "TextBox", donde mostraremos el contenido del campo de Oracle de tipo LONG.
El código fuente completo en Visual Basic:
Private Sub bObtenerDatos_Click()
Dim rdoEntorno As rdoEnvironment
Dim rdoConexion As rdoConnection
Dim rsConsulta As rdoResultset
Dim conODBC As String
Dim filtro As String
Dim longCampo As Long
Dim textoLargo As String
On Error GoTo cError
conODBC = "DSN=nombreodbc;ODBC;uid=usuario;pwd=contrasena"
Set rdoEntorno = rdoEngine.rdoEnvironments(0)
Set rdoConexion = rdoEntorno.OpenConnection("nombreodbc", False, True, conODBC)
filtro = "select CODIGO, TEXTO_LARGO " + _
"from NOMBRE_TABLA where CODIGO='" + _
txtCodigo.Text + "'"
Set rsConsulta = rdoConexion.OpenResultset(filtro, rdOpenStatic)
rsConsulta.MoveLast
rsConsulta.MoveFirst
If rsConsulta.RowCount > 0 Then
If Not IsNull(rsConsulta.rdoColumns("TEXTO_LARGO").Value) Then
longCampo = rsConsulta.rdoColumns("TEXTO_LARGO").ColumnSize
textoLargo = rsConsulta.rdoColumns("TEXTO_LARGO").GetChunk(longCampo)
txtTextoMostrar = textoLargo
Else
MsgBox "El registro: '" _
+ txtCodigo.Text + " no tiene datos.", vbInformation + vbOKOnly
End If
Else
MsgBox "No existe ningún registro con el código: '" _
+ txtCodigo.Text, vbInformation + vbOKOnly
End If
End Sub
Publicado el: 2006-06-12