NOTAS PARA LA CONEXIÓN CON UNA BASE DE DATOS UTILIZANDO VISUAL BASIC

Sección No. 3: Conexión Visual Basic y ORACLE.



Antes de comenzar la clase una Reflexión: Olimpiadas Especiales.

Hace algunos años, en las olimpiadas para personas con discapacidad de Seattle, también llamadas "Olimpiadas especiales",nueve participantes, todos con deficiencia mental, se alinearon para la salida de la carrera de los cien metros lisos.


A la señal, todos partieron, no exactamente disparados, pero con deseos dar lo mejor de si, terminar la carrera y ganar el premio.


Todos, excepto un muchacho, que tropezó en el piso, cayó y rodando comenzó a llorar...

Los otros ocho escucharon el llanto, disminuyeron el paso y miraron hacia atrás.

Vieron al muchacho en el suelo, se detuvieron y regresaron... ¡Todos!


Una de las muchachas, con síndrome de Down, se arrodilló, le dio un beso y le dijo: "Listo, ahora vas a ganar"....

Y todos, los nueve competidores entrelazaron los brazos y caminaron juntos hasta la línea de llegada.



El estadio entero se puso de pie y en ese momento no  había un solo par de ojos secos.

Los aplausos duraron largos  minutos, las personas que estaban allí aquél día, repiten y repiten esa  historia hasta hoy.



¿Por qué? ...

Porque en el fondo, todos sabemos que lo que importa en esta vida, más que ganar, es ayudar a los demás para vencer, aunque ello signifique disminuir el paso y cambiar el rumbo.



Porque el verdadero sentido de esta vida es que

TODOS JUNTOS GANEMOS,


no cada uno de nosotros en forma individual.

Ojalá que también seamos capaces de disminuir el paso o cambiar el rumbo, para ayudar a alguien que en cierto momento de su vida tropezó y que necesita de ayuda para continuar.


Creo que nos hace falta disminuir el paso y cambiar de rumbo

y sobre todo que esto no sea un proyecto individual,

sino colectivo,

entre todos seguro que podemos...


Guárdalo en tu corazón,

y asegúrate de encontrarlo en el momento oportuno, cuando debas ayudar a quien que te necesite.

¡QUE DIOS TE BENDIGA!



COMENZAR EL TRABAJO DE CONEXIÓN CON LA BASE DE DATOS DE ORACLE.


-Para realizar una Conexión tipo ADO, necesitamos agregar el Componente ADODC al Proyecto. Para ello se entra por “Proyecto”, “Componentes” y se localiza Microsoft ADO Data Control 6.0 (OLEDB) se selecciona con Clic y se acepta.




  • En la Ventana General aparecerá un nuevo Componente, el cual es el ADODC.



  • El ADODC debe ser incluido en el Formulario de Clientes para lograr la Conexión con la Base de Datos. Se recomienda colocar la Propiedad Visible del ADODC en Falso.



  • Se hace necesario ir a la ventana de Propiedades, allí se debe Manipular la “ConnectionString”.

  • Haga Doble Clic sobre los 3 puntos de “ConnectionString”.




  • Marque la opción “Usar Nombre de Origen de datos ODBC ” y “Nuevo”.


  • En “Crear Nuevo Origen de Datos”, seleccionar “Origen de Datos de Sistema” y “Siguiente”.


  • Seleccionar Microsoft ODBC for ORACLE y Siguiente. En la Lámina siguiente colocar la Opción Finalizar.


  • Después de indicarle “Finalizar”, aparecerá la Ventana de “Configuración de Microsoft ODBC para ORACLE”. Allí se colocará un nombre que identifique la Conexión, luego una Descripción. En donde dice “Nombre de usuario” se colocará usuario/password (scott/tiger por ejemplo) y en “Servidor” colocará el nombre de la Base de Datos. En el ejemplo se colocó ORACLE pero en esta máquina virtual el nombre de la Base de Datos es UCLA. Luego seleccionar “Aceptar”.

  • Al volver a “Página de Propiedades”, seleccionar “Usar Cadena de Conexión” y “Generar”.





  • Aquí seleccionar la Pestaña de “Conexión”, luego “Usar el nombre de origen de datos”, allí seleccionar la Conexión ODBC creada (Conexoracle en este caso).

- Luego seleccionar “Probar Conexión”.


  • Al volver a “Páginas de Propiedades” encontraremos la Cadena de Conexión, la cual va a quedar lista para ser copiada. Al correr el Programa, los datos se van a actualizar en las tablas de ORACLE.


  • Antes de Continuar el Proceso de Conexión, es necesario agregar un Módulo, para ello se entra por “Proyecto”, “Agregar Módulo”.



  • Dentro del Módulo Declarar las siguientes Variables, las cuales se necesitan para realizar la Conexión. Para establecer la conexión con la Base de Datos, se coloca en el Formulario MDI, las instrucciones “Set Db”, “Db.Open” y “Sopt” como sigue.

  • Para establecer la conexión con la Base de Datos, se coloca en el Formulario MDI, las instrucciones “Set Db”, “Db.Open” y “Sopt” como sigue.

  • La cadena de caracteres que aparece en la instrucción db.open tiene que ser copiada de la propiedad “ConnectionString” del ADODC que se encuentra en el Formulario de Clientes. Para ir a copiar esta cadena, es necesario volver al Formulario de Clientes, seleccionar el ADODC, luego con Botón derecho seleccionar las Propiedades.


  • Allí seleccionar la Cadena de Conexión, con Botón derecho proceder a Copiar. Luego será copiada en el db.open que se encuentra en el Formulario MDI. La Cadena debe ir entre dobles Comillas tal como está en la parte J de este material.



  • En el Formulario de Clientes, presionar Doble Clic sobre el “Command Buttom” de Incluir. Allí agregar las instrucciones que siguen:




Recuerde que en ORACLE, para realizar una Inclusión de un Cliente, usted utilizó la siguiente Instrucción:


Insert Into Clientes

Values (“0001”,”MAKRO”,1500,”A”)


Es por ello, que la instrucción sql incluye esa Sintaxis. Ahora bien, no es fácil entender de manera directa la mencionada sintaxis, pero usted, puede internalizarla mejor si la hace por partes.


Imagine que usted creó una tabla en ORACLE llamada CLIENTE1 porque tiene solo el Campo CODIGO, el cual es de tipo Varchar2(4).



Cuando usted vaya a realizar la Instrucción sql en VISUAL BASIC, para incluir un Registro en la Tabla Cliente1, deberá escribir:

Para visualizarlo mas grande:

sql = "Insert Into Cliente1 values ( ' " & (txtcodigo.Text) & " ' )"


De esta manera, se realizará la Inclusión de un Registro en la tabla Cliente1.


Si analiza la Instrucción, verá que comienza con:

  1. sql=” , comienza con Doble Comillas porque el resto es un Literal que debe ir entre Comillas. Por ende, toda la Instrucción debe terminar entre Doble Comillas.

  2. Luego, Insert Into Cliente1 Values , es parte de la Sintaxis.

  3. Si estuviera en SQL normal (No en Visual Basic), después del VALUES vendría: (“0001”). Pero Visual Basic exige un par de concatenaciones para poder analizar la Sintaxis. En consecuencia, se escribe después del VALUES: ( ‘ “ & aquí después del paréntesis se colocó una Comilla Simple para concatenarlo con la Doble Comilla, luego el & para concatenar la Doble comilla con lo que irá dentro del paréntesis.

  4. Seguido se coloca (txtcodigo.text), el cual va entre paréntesis porque se está refiriendo a la propiedad TEXT del TEXTBOX que está en el Formulario. Es decir, lo que el usuario escribió en el TEXTBOX que se encuentra en el Formulario, será grabado en la tabla Cliente1 en el campo código, en este caso el usuario escribió 001, tal como se muestra en el siguiente cuadro.



Imagine ahora, que usted creó una tabla en ORACLE llamada CLIENTE3 porque tiene tres Campos CODIGO, NOMBRE y LIMCRE (Límite de Crédito).



Cuando usted vaya a realizar la Instrucción sql en VISUAL BASIC, para incluir un Registro en la Tabla Cliente3, deberá escribir:

sql = "Insert Into Cliente3 values('" & (txtcodigo.Text) & "','" & (txtnombre.Text) & "','" & Val(txtlimite.Text) & "')"


Para Visualizarl un Poco mejor la segunda parte de la Instrucción:


Values ('" & (txtcodigo.Text) & "','" & (txtnombre.Text) & "','" & Val(txtlimite.Text) & "')"



En este caso la Instrucción SQL, cumple con las mismas reglas de Cliente1. Puede notar que para colocar un segundo Campo como es el nombre debió colocarse una coma y luego Comilla simple seguido de Doble comilla, luego el & y después (txtnombre.text) se cerró con & Doble Comilla y Comilla Simple. El caso del límite de Crédito es Similar, pero como el campo es texto y se va a grabar en un campo numérico se le colocó la instrucción VAL para convertirlo a Numérico antes de Grabarlo.


Cuando la Instrucción en Visual Basic es larga, se hace mas difícil visualizarla en una sola línea. En ese caso se puede partir en varias líneas utilizando el caracter de subrayado _ . Es por eso, que en la instrucción para grabar en la Tabla de Clientes en donde se utiliza el estatus, se hizo el corte en dos líneas como sigue:


sql = "Insert Into Clientes(codigo,nombre,LimiteCredito) values" _

& "('" & (txtcodigo.Text) & "','" & (txtnombre.Text) & "','" & Val((txtlimite.Text)) & "')"

db.Execute sql, SOpt


Note que después del values se colocó doble comillas y subrayado. En la línea siguiente se abrió con & y luego Doble Comillas para comenzar la concatenación con el resto de la Instrucción.

Siguiendo con el proceso de Actualización, sigue el Punto N.


  1. Para realizar la Modificación del Nombre (Por Ejemplo) de algún Cliente, en el Formulario presionar Doble Clic sobre el “Command Buttom” de Modificar. Allí agregar las instrucciones que siguen:



Ya puede ejecutar su programa y realizará la “Inclusión” de un Cliente en la Tabla de Clientes y también la “Modificación” del Nombre de un Cliente. Si necesita modificar otro campo ya puede hacerlo.


En la Gráfica “M” es necesario que el Estudiante revise la Sintaxis de las Instrucciones SQL en Visual Basic. Es Importante que aprenda como Concatenar. La idea es que el Estudiante agregue las Instrucciones necesarias para completar las Rutinas de Modificar y Eliminar, y así, terminar el proceso de Actualización.





DESPUÉS DE ESTA CLASE TANNNNNNN!!!!!! LARGA: Algo de RELAX.


Una señora viaja en un taxi acompañada de su hija de cinco años. Al pasar por una esquina, la chiquilla ve a unas prostitutas y pregunta: "Oye, mamá, ¿quiénes son esas señoras?" Nerviosa, la mujer responde: "Son señoras que están esperando que sus maridos salgan de trabajar, hijita".



El taxista, que venía escuchando todo, se dirige a la madre: "¡Chingado, señora, dígale la verdad: son prostitutas!" Se hace un tenso silencio. En eso, la niña lanza otra pregunta: "Oye, mami, ¿y las prostitutas pueden tener hijos?" La mamá responde : "¡Pues claro!



¿De dónde crees que salen los taxistas?"