crea tu aplicación vb

17
Crea tu aplicación VB .Net + BD (Oracle, SQL Server, MySQL) ene 04, 2011 21 comentarios por Im_MegaZ Un saludo a todos! Sean bienvenidos a mi primer post del 2011 y en G3ekArmy, que mejor manera de iniciar este año que programando. Este post esta enfocado a personas que están iniciándose en el mundo de la programación (Con nociones de SQL y .Net), y presenta una gran tendencia del software, utilizar una base de datos. Así que crea tu aplicación VB .Net + BD. ¿Que necesitamos para comenzar? Visual Studio .Net 2008 y trabajaremos con los gestores de BD más utilizados en la actualidad (Drivers) el cuál son SQL Server, Oracle y MySQL , así que comenzamos. Un poco de teoría: Para enteder como funciona la tecnologia de ADO.Net necesitamos dejar claros algunos conceptos: Connection: Proporciona una conexión usada para comunicarse con la fuente de datos. También actúa como Abstract Factory para los objetos command.

Upload: cceeinf

Post on 10-Aug-2015

9 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Crea tu aplicación VB

Crea tu aplicación VB .Net + BD (Oracle, SQL Server, MySQL) ene 04, 2011 21 comentarios por Im_MegaZ

Un saludo a todos! Sean bienvenidos a mi primer post del 2011 y en G3ekArmy, que mejor manera de iniciar este año que programando. Este post esta enfocado a personas que están iniciándose en el mundo de la programación (Con nociones de SQL y .Net), y presenta una gran tendencia del software, utilizar una base de datos. Así que crea tu aplicación VB .Net + BD.

¿Que necesitamos para comenzar?

Visual Studio .Net 2008 y trabajaremos con los gestores de BD más utilizados en la actualidad (Drivers) el cuál son SQL Server, Oracle y MySQL, así que comenzamos.

Un poco de teoría:

Para enteder como funciona la tecnologia de ADO.Net necesitamos dejar claros algunos conceptos:

Connection: Proporciona una conexión usada para comunicarse con la fuente de datos. También actúa como Abstract Factory para los objetos command.

Command: Usado para realizar alguna acción en la fuente de datos, como lectura, actualización, o borrado de datos relacionales.

Parameter: Describe un simple parámetro para un command. Un ejemplo común es un parámetro para ser usado en un procedimiento almacenado.

DataAdapter: “Puente” utilizado para transferir data entre una fuente de datos y un objeto DataSet (ver abajo).

Page 2: Crea tu aplicación VB

DataReader: Es una clase usada para procesar eficientemente una lista grande de resultados, un registro a la vez.Como verán nos ofrece interactuar con una base de datos, sin importar el proveedor.

 

Crear la base de datos:

Lo primero será crear una base de datos llamada Usuarios y una tabla llamada Datos con las siguientes características:

ID Entero Autoincrementable

Nombre Carácter No nulo

Edad Entero No nulo

Hobbies Carácter No nulo

Y serán todos los elementos, nos enfocaremos al uso de la tecnologia ADO.Net en un ejemplo fácil pero entendible.

 

VB + SQL Server

Primero necesitamos crear un nuevo proyecto, y que sea una aplicación de escritorio, al parecer este modo será mas fácil, ya que SQL Server es el gestor de BD por defecto en la plataforma .Net. Sino estas muy bien familiarizado con bases de datos, puedes utilizar Microsoft SQL Server Management Studio en su versión express.

Lo primordial será diseñar nuestro formulario:

Page 3: Crea tu aplicación VB

3 Botones y un Datagridview y un ComboBox con los valores por default : ID, nombre, edad, y hobby

 

Ahora lo verdaderamente importante, momento de pasar a programar

Lo primero será agregar los namespaces siguientes:

El namespace System.Data.SqlClient es el necesario para interactuar con la base de datos en el proveedor SQL Server

 

Una vez terminado, ahora declaramos las variables que utilizaremos.

Page 4: Crea tu aplicación VB

Están 2 muy importantes la variable strConexion y Conexion, la primera solamente es del tipo cadena y contiene la “dirección” de la base de datos, claro contiene más información como el tipo de proveedor, el usuario y la seguridad empleada. El objeto Conexion es declarado del tipo SqlConnection y con parámetro el valor de strConexion. Las variables dtTabla y dsTabla más adelante las utilizaremos.

¿De donde obtenemos la cadena de conexión? Fácil, nos vamos al explorador de servidores que se encuentra en el menú ver. Una vez que nos salga el menú agregamos una nueva conexión.

 

Seleccionamos el origen de datos Microsoft SQL Server (SqlClient), el nombre del servidor es .\SQLEXPRESS que es nuestro proveedor, si todo sale bien en Seleccionar el nombre de la base de datos, debe aparacer la que se creo anteriormente, en este caso USUARIOS. En la ventana de propiedades se puede ver la propiedad Cadena de conexión, esa es la cadena que utilizaremos.

Page 5: Crea tu aplicación VB
Page 6: Crea tu aplicación VB

 

Ahora crearemos un procedimiento llamado Actualizar, este procedimiento no lleva parámetros y lo utilizaremos en el momento que se cargue el formulario, se ingrese un dato o se elimine, nos actualizara el DataGridView con los nuevos datos. En esta parte utilizaremos las variables antes declaradas dtTabla es del tipo DataTable representa una “tabla” con columnas y filas.

En este procedimiento al inicio llamamos al procedimiento clear() de dtTabla.Rows, con esto nos aseguramos que en el momento que se llame a la función este “limpia”. Inmediatamente se declara un SqlCommand llamado cmdDatos con los parametros “Select * from Datos”, y el objeto conexión, esta consulta siempre se realizara en el momento que se mande a llamar a cmdDatos, en este caso en el SqlDataAdapter, ahora se llama al procedimiento da.Fill(dtTabla) que se encarga de llenar dtTable con el valor arrojado por nuestra consulta que se encuentra en cmdDatos, en otras palabras, por todos los datos en la tabla. Al final el objeto DataGridView1 su origen de datos será dtTabla.

 

Ahora en el evento Load del formulario, se llama al procedimiento Actualizar(). Con la finalidad de presentar todos los datos contenidos en la tabla al inicio del programa.

 

Ahora vamos a programar la parte de insertar datos.

Page 7: Crea tu aplicación VB

En este código al inicio declaramos un nuevo objeto llamado cmdInsertar del tipo SqlCommand, este objeto se encarga de ejecutar las consultas deseadas, dentro de el hay 3 tipos básicos de ejecutar las consultas, la primera es ExecuteNonQuery se utiliza cuando una consulta no retorna algún tipo de valor (INSERT, DELETE, UPDATE), la segunda es ExecuteScalar y esta se utiliza cuando la consulta nos regresa solamente un valor, y la última es ExecuteReader y es cuando la consulta regresa múltiples valores.

Declaramos nuestras variables del tipo cadena, y en InputBox “recuperamos” los valores. Después creamos una instancia del objeto cmdInsertar ahora como parámetros la consulta y el objeto conexión, en esta consulta ingresamos los valores de nombre, edad, y hobby mediante parámetros. Siempre es importante ya que le da mas seguridad a nuestra consulta. Ahora se abre la conexión con el objeto Conexion.Open(), ejecutamos la consulta con cmdInsertar.ExecuteNonQuery(), actualizamos la información y cerramos la conexión. Como verán resulta bastante fácil.

 

Ahora programaremos la opción de eliminar:

Page 8: Crea tu aplicación VB

Cuando se quiere eliminar, por lo regular se posee la información del elemento, en este caso sere especifico. Vamos a eliminar por medio del ID que posee cada usuario en la base de datos.  Se declara cmdEliminar del tipo SqlCommand, y un ID de tipo entero. En ID se almacena el valor que el usuario desea eliminar. Tenemos una condición, si no hay elementos en la tabla no podemos eliminar, eso se hace contando cuantos elemento posee la tabla con el procedimiento dtTabla.Rows.Count, en caso de haber elementos creamos una instancia de SqlCommand con la consulta “Delete from Datos Where Id=@id”, también estamos mandando por parámetro el valor de ID, abrimos la conexión, ejecuamos la consulta, actualizamos y cerramos la conexión.

 

Por último  y no menos importante, la opción de buscar:

 

Aquí tenemos las variables Valor y Criterio, ¿porque? el criterio es el valor que el usuario selecciona como búsqueda (id,nombre,edad,hobby) y valor obviamente es lo que se va a

Page 9: Crea tu aplicación VB

buscar. Hay una condición en el procedimiento, esta programada cuando se selecciona el Id u otro criterio de búsqueda, un id es un valor que no se debe repetir, se puede repetir datos más no id, al momento de buscar el id debemos ser específicos, por eso esta el “=”. Pero si buscamos por otro criterio se utiliza la clausula LIKE donde los valores encontrados son todos aquellos que coincidan con el valor de búsqueda.

Ejecutamos y listo! Tenemos una aplicación que se conecta a una BD en SQL Server 2005…

La tecnologia de ADO.Net nos facilita esta conexión, es momento de hacerlo para MySQL y Oracle. Se daran cuenta que gran parte del código se reutiliza y nada más se cambian los

objetos del namespace SystemData.SqlClient

VB + MySQL

Reutilizaremos el mismo formulario, pero antes de empezar a programar es importante que descarguen el driver de MySQL para .Net y su motor de base de datos

Conector

http://dev.mysql.com/downloads/connector/net/

Page 10: Crea tu aplicación VB

 

Motor BD MySQL

http://dev.mysql.com/downloads/mysql/

 

Una vez descargados, crearemos la base de datos usuarios, con la tabla datos y los mismos tipos de datos.

 

Despues de instalar el motor de base de datos, y el conector, en el proyecto de Visual Studio debemos agregar la referencia MySQL.Data, ese es el namespace que utilizaremos. Esto desde el menú Proyecto -> Agregar referencia…

Page 11: Crea tu aplicación VB

 

También debemos poseer la cadena de conexión, de esta manera: Ingresando directamente esta cadena

“Server=nuestro_servidor;Database=NombreBD;Uid=Usuario;Pwd=Contraseña;“

 

Agregamos nuestros namespaces y se darán cuenta que los objetos de esta clase no son tan diferente al de la clase SqlClient

Los elementos diferentes entre ambas clases son que en SqlClient tenemos a SqlConnection, SqlDataAdapter, SqlCommand… Y en la clase Mysql.Data.SqlCliente son MysqlConnection, MysqlDataAdapter, MysqlCommand. Como verán no son grandes cambios al código xD.

 

Agregar:

Page 12: Crea tu aplicación VB

 

Eliminar:

 

Buscar:

Page 13: Crea tu aplicación VB

 

Y el procedimiento Actualizar

 

Como ven ¿Es fácil, no? Ahora vamos con Oracle…

 

VB + Oracle

Ya para finalizar este tutorial, vamos con el proveedor Oracle. Lo primero es descargar Oracle en su versión 11g y el Oracle Data Provider para .Net.

 

Oracle Data Provider

http://www.oracle.com/technetwork/topics/dotnet/index-085163.html

Oracle Express Edition

http://www.oracle.com/technetwork/database/express-edition/downloads/index.html

 

En este último ejemplo utilizaremos el mismo diseño del formulario. Ademas crearemos en Oracle la base de datos con las mismas características que las anteriores.

Importamos el namespace indicado:

Page 14: Crea tu aplicación VB

Pero sin antes agregar la referencia Oracle.DataAcess.dll a nuestro proyecto.

Y su cadena de conexión: “Data Source=Nombre_BD;User Id=Usuario;Password=Contraseña“

Código:

Declaramos nuestras variables

 

Agregar:

 

Eliminar:

Page 15: Crea tu aplicación VB

 

 

Buscar:

 

Actualizar:

 

Page 16: Crea tu aplicación VB

Con esto doy por finalizado mi tutorial, espero que les sea de utilidad y son bienvenidas las criticas constructivas . Esperen las próximas entregas de como hacerlo para C# y Java. Y por si deseas las descargas de los proyectos…