llenado de combobox vs2010 y oracle xe
DESCRIPTION
Explicación paso a paso del llenado de un Combobox al interior de Visual Studio 2010 , conectada con Oracle Xe. Se hace especial referencia a la forma de como las propiedades y los métodos de la BD se emplean para presentar datos tomados de una table de Oracle. Se incluye un vídeo donde se ejecutan y demuestra el funcionamiento de lo dicho.TRANSCRIPT
Llenado de#Combobox
Visual Basic 2010Oracle Xe
Conectado
• IMPORTANTE
“Para efectuar la conexión entre Visual Studio 2010 y Oracle Xe , existen diversos métodos. Aquí empleo la conexión por
medio de la inclusión de la Referencia”.
Oracle.DataAccess.dll
Se debe garantizar que esta librería esta disponible para VS2010.
Ejemplo
Se emplea para ejemplo la tabla “dept” que esta por defecto en la instalación de Oracle Xe
Creando Formulario
• Cree un Formulario que tenga una apariencia similar.
3 Etiquetas: ID dept Label1 Nombre Dep
1 ComboBox
Importando librería
• Es importante importar la librería para poder referenciar los elementos de la conexión y la interacción con la base de datos.
Imports Oracle.DataAccess.Client
Llenando el Combobox
• Se realizara la programación en el evento de carga del formulario “_Load”
Private Sub Form1_Load(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesMyBase.Load
Llenando el Combobox
• Estableciendo la cadena de conexión.
Dim oradb As String ="Data Source=(DESCRIPTION=" + "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))"
+ "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)));"+ "User Id=pruebas;Password=123456;"
Host: 127.0.0.1 ---Hace referencia al equipo localService_name: XE ----Servicio por defecto de Oracle XeId=pruebeas;Password=123456 ---usuario y clave de la BD
oradb ahora guarda la cadena de conexión
Llenando el Combobox
• Se abre la conexión y se puede iniciar a construir la consulta sql que se aplicara.
conn.Open()Dim sql As String = "select dname,DEPTNO from dept "
sql almacena la cadena sql que se ejecutara mas adelante.
Es preciso notar como conn.Open() refiere a la conexión creada anteriormente e invoca el método de abrir la conexión preparada.
Llenando el Combobox
• Se crea la instancia de OracleCommand tomando la variable “sql” que almacena la consulta y la variable “con” que representa la conexión.
Dim cmd As New OracleCommand(sql, conn)cmd.CommandType = CommandType.Text
cmd almacenara la consulta sql vinculada con la conexión y lista para ser invocada.
Se establece que la nueva instancia cmd deberá recibir instrucciones
del tipo texto SQL. Esto se logra estableciendo el CommandType en Text.
Llenando el Combobox
• Ahora se declaran dos variables que jugaran un papel importante para el desarrollo del ejercicio.
Dim ODA As OracleDataAdapterDim ds = New DataSet()
OracleDataAdpater Representa un conjunto de comandos de datos y una conexión a una base de datos que se utilizan para rellenar el DataSet
Dataset hace referencia a un conjunto de datos que se empleara para llenar el Combobox.
Llenando el Combobox
• Se crea una nueva instancia de OracleDataAdapterpasando el parámetro “cmd”.
ODA = New OracleDataAdapter(cmd)ODA.Fill(ds)
Se llena el DataSet empleando el método Fill asociado al OracleDataAdapter.
Con lo anterior el “ds” ya cuenta con el resultado de la ejecución de
la consulta SQL almacena en los pasos anteriores.
Llenando el Combobox
• Ahora se trabaja directamente con el Combobox1, llamado así al interior del formulario.
ComboBox1.DataSource = ds.Tables(0)ComboBox1.DisplayMember = "dname"ComboBox1.ValueMember = "DEPTNO"
Con el parámetro DataSource del combobox, se establece la asociación con el “ds” que presenta al “DataSource”.
El parámetro “DisplayMember” referencia los datos que se mostraran en el combobox.
El parámetro “ValueMember” permite establecer cual dato realmente se guardara.
Llenando el Combobox
• Cerrando y liberando recursos.
conn.Close()conn.Dispose()
Finalizado el trabajo con el combobox y la conexión a la base de datos , el último paso a seguir es cerrar la conexión y liberando los recursos. Las dos sentencia presentadas en la parte superior permiten realizar esto.
Cambian Etiqueta
• El ejercicio también involucra el cambiar el valor de una etiqueta con el valor de la selección del combobox.
Private Sub ComboBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles
ComboBox1.TextChangedLabel1.Text = ComboBox1.SelectedValue.ToString
End Sub
Con el parámetro “SelectedValue” del Combobox1 es posible acceder al valor seleccionado por el usuario, pero es necesario transformarlo a texto (ToString) para lograr presentarlo en la etiqueta “Label1”
Se realizo la programación en el evento _TextChanged del Combobox1
Video-Ejecuciónhttp://youtu.be/DjVjNWp6xvo
@josefabiandiaz
https://www.youtube.com/user/fabiandiazs
Msc.Ing.Jose Fabián Diaz Silva
Consultas