Ing. Javier Leal

Ing. Javier Leal – Desarrollador FullStack

Acceso a datos con Visual Basic.net

22 comentarios

Hola a todos los lectores de Nuevo ahoa les tarigo un temas algo mas avnzado.. espero les guste much gente se esta iniciando en el desarrollo con .NET hoy en dia es importante saber como acceder a datos desde visual Basic .NET para empezar lo primero son los recursos.

REQUISITOS A TENER INSTALADO EN SU COMPUTADOR:

VISUAL BASIC 2005/2008 Express Editions /si tienes acceso a la profesional mejor.

http://www.microsoft.com/express/vb/Default.aspx

vbnet

SQL Server 2005 Express Editions

http://www.microsoft.com/Sqlserver/2005/en/us/express.aspx

SQL-Server-2005-2

(Si quieren descargan de esta misma pagina el Management Studio aunque todo lo que se hara en esta practica se realizara directamente desde Visual Basic.net)

Vamos a trabajar por pasos el primero paso por supuesto es abrir VISUAL BASIC.NET.

ántalla1

Justo en esa imagen pueden ver como yo estoy agregando un nuevo proyecto seleccionen Aplicacion de Windows Form y le colocan un nombre en mi caso yo le coloque «Accesoadatos» ustedes le pueden colocar el nombre que quieran

Ya al tener este paso cumplido vamos a observar que no queda una panalla donde diseñar nuestro sistema con una pantalla principal llamada Form1:

ántalla1

Ok luego nos vamos a ir al Explorador de soluciones que es donde se van a encontrar todos los elemntos de tu proyecto de programacion para abrir el explorador de soluciones lo puedes encontrar del lado derecho o si no esta activo puedes ir al MENU ver y activas la que dice Explorador de Objetos. A lo que lo tengan activo van a presionar click derecho sobre el nombre de su solucion en mi caso fue «Accesoadatos» (presiono click derecho) y selecciono Agregar Nuevo elemento.

ántalla1

En la lista que aparece para agregar nuevos elementos a nuestro proyecto debelos seleccionar el ojeto Base de datos basada en servicio para poder tener una base de datos donde almacenas y funciones bajo windows la otra opcion muy parecida se utiliza para base de datos para aplicaciones Moviles.. por ellos no seleccionamos bases de datos local, debes cuidar que la extension del archivo que agregas a la solucion es .MDF asi estaras mas seguro cambia el nombre de la base de datos a tu gusto en mi caso le coloque BDejemplo.mdf aqui pueder ver el ejemplo en pantalla:

ántalla1

al darle al boton agregar va a hacer unos procesos y va a aparecer un asistente para base de datos al cual debes darle acepar de lo contrario ese asistente creara un Dataset Tipaso propio y lo ideal es que tu sepas como agregarlo manualmente. Una vez que ya nuestra base de datos esta creada procedemos a darle desde el explorador de objetos  dos veces click a la base de datos para poder visualizar del lado izquierdo el Explorador de base de datos muy importante para crear nuestras tablas y procedimientos te fijaras que hay una parte que dice TABLAS presionando click derecho y seleccionar agregar nueva Tabla lo puedes ver en la siguiente imagen:

ántalla1

ya al precionas podemos agregar los campos que tendra nuestra tabla para hacerlo mas sencillo vamos a agrega solo tres campos de manera que exliquemos hoy como agregar un elemento y como mostrar los datos de la tabla. Los Campos sera Cedula que sera un campo clave, nombre y apellido. Ningun va a permitir valos nulo la cedula sera de tipo numerico y nombre y apellido nvarchar(50). Lo pueden ver en la imagen:

ántalla1

solo queda precionar salir y te pedira que guardes la tabla con el nombre que tu quieras en mi caso le coloque alumnos,ahora procedemos a agregar unos datos de ejemplo a nuestra tabla asi como agregamos nueva tabla: le van a dar click derecho al nombre de la tabla que acaban de agregar y le dan a la Opcion Mostrar datos de tabla hay prodran agregar algunos datos de ejemplo.

ántalla1

Solo queda presionar guardar y ahora es hora de diseñar el formulario para poder dar el ejemplo solamente se usaran los siguientes controles: Un Datagrig para mostrar los datos tres Botones uno para guardar otro para cargar los datos y otro para salir del sistema, tres textbox para agregar los tres datos de la base de datos de ejemplo y tres label para identificar a que dato corresponde cada textbox. Para ello debemos hacer uso del cuadro de herramientas para agregar los controles al formulario se puede ver del lado izquierdo y si no esta activo pueden ir al menu Ver y activar Cuadro de herramientas.

ántalla1

Aqui como puede observar ya he agregado los controles,  les recuerdo que .NET es Orientado a objetos y todo objeto tiene sus propiedades estados y metodos.. por ellos es importante sabes con que propiedades vamos a trabajar la mayoria de los controles encontramos en sus propiedades valga la redundacia la proiedad TEXT y la propiedad NAME text en el nombre que se va a visualizar y NAME el nombre como se reconocera programaticamente ese objeto las propiedades las podemos observar del lad Derecho al momento de seleccionar uno o varios objetos si no salen puedes ir al menu ver y activas ventana propiedades.

ántalla1

si pueden observar modifique la propiedad TEXT  de los label para identificar que dato va en cada textbox y y los nombres de cada boton ahora vienen haciendo a la propiedad name que no va a producir ningun cambio solo lo veran mas adelante como ejemplo deben saber que cada control tiene un nombre clave para saber que tipo es por ejemplo los Label lleval LBL los textboc llevan TXT  y los botones CMD si quiero identificar los tres notones y los tres textbox programaticamente modifico la propiedad name de cada uno y usaria TXTcedula, TXTnombre. TXTapellido, CMDguardar, CMDsalir, CMDcargar y aun falta el datagrig yo personalmente le coloco DGW es decir en este caso le colocaria DGWdatos. de esta menera estaran organizados los nombres programaticamente y mas adelante veran la importancia de hacer esto.

ántalla1

Ahora toca agregar un sistemas de tipos a nuestro proyecto al igual que agregamos la base de datos vamos a presionar en el Explorardor de soluciones click derecho sobre el nombre de nuestro proyecto y agregar un nuevo elemento, es este caso debemos agregar un conjunto de datos que tiene extension .XSD por nombre yo le coloque DSprueba ustedes le colocal el nombre que ustedes quieran una vez que agregamos su nombre le damos agregar:

ántalla1una vez que agrgamos aparecera una pantalla de fondo celeste con el siguiente mensaje:

Utilice el diseñador de base de datos para trabajar con un conjunto de tablas con tipo

 Solo queda arrastras la tabla que creamos a ese diseñador de datos con tipo:

ántalla1

Una ves agregada nos aparecera la tabla con sus campos y en la parte de abajo metodos para buscar esos datos donde a este vamos a agregar dos consultas de las cuales una ya la tiene por defecto y la otra es para guardar los datos es decir vamos a usar sentencias TRANSAC SQL para insert y para select. quiza te sea un poco extraño esto pero poco a poco te vas acostubrando solo es cosa de practicar querer aprender y no tenerle miedo , el metodo que se agrega or defecto se llama FILL,Getdata a este metodo le vamos presionar click derecho y le damos a la opcion agregar conculta,

ántalla1

Al presionar esta opcion tendremos un asistente que nos ayudara con esto del tractac SQL que ya les voy a explicar.. la primera opcion que sale s es que si queremos crear un sentencia SQL, un procedimiento almacenado y un procedimiento almacenado ya existente por experiencia es mejor usar procedimientos almacenados los invito a que investigues sobre ellos son recomendados en las buenas practicas de programacion y acceso a datos en si todos vamos a elegir la segunda opcion y nos saldra entonces la siguiente pantalla:

ántalla1

donde podran ver que la primera opcion  es un select que devuelve una fila en este caso es si quieres el valos de una o varias filas dependiento del dato que desees por ejemplo dame el dato donde la celula sea tal, en este ejemplo solo obtendras un resultado por que es imposible hayan dos personas con el mismo numero de cedula pero si fuera apelldido si es posible tener mas de dos resultados esta es la que usaremos pero ya por defecto ya esta realizado, en el segusdo caso es un Select que devuelve un solo valor: en esta opcion podran optener resultados como cuantos registros tienen en su tabla hacer una suma de una columna que contenga valores como sueldos entre otras esta no la usaremos en este caso, en el tercer caso es un UPDATE se utiliza para actualizar datos de un registri que ya existe es decir la funcion MODIFICAR, para el cuarto se trata de un DELETE logicamente se utiliza para eliminar registros de la tabla y por ultimo un INSERT es lo mismo que guardar  datos y es el que utilizaremos para darle funcion al boton guardar asi que este es el que vamos a seleccionary visualizaras luego la siguiente pantalla:

ántalla1

esta es la consulta o TRANSAC SQL si no estas de acuerdo con lo que el asistente hizo puedes modificarlo y personalizarlo presionando GENERADOR DE CONCULTAS. En tra ocacion explico mas profundamente esta parte al presionar generador de conculta le dan aceptar para mejorar esa consulta sql que debe quedar de esta forma para los datos que trabajo y nombre de la tabla

INSERT INTO Alumnos
                         (Cedula, Nombre, Apellido)
VALUES        (@Cedula,@Nombre,@Apellido)

si aparece algo mas luego de precionar aceptar sobre el generador de consulta borrenlo y deje solo esto que les coloque normalmente se agrega algo como esto

SELECT Cedula, Nombre, Apellido FROM Alumnos WHERE (Cedula = @Cedula)

y se utiliza para que luego de agregar los datos llamarlos de una vez pero en este caso no lo vamos a usar.

luego de presionar en siguiente solo les pedira el nombre del procedimiento almacenado y el nombre de la función ya listo ya tenemos nuestro diseñador de dataset con dos funciones una que se agrego por defecto llama da fill,GET y la segunda agregada por nosotros para guardar datos llamada en mi caso le coloque como nombre INSERALUM ustedes pueden colocarle el que quiera pero este nombre lo utilizaremos mas adelante. Asi nos debe quedar nuestro dataset en el diseñador.

AAAAAnew

Ahora toga agregar codigo a los botones lo primero que haremos es agregar codigo al boton guardar le dareos dos veces click para ir al evento click de ese boton asi a lo que presionesmo click se ejjecutara el codigo que le coloquemos, Debemos aprender como llamar a los datos de un Dataset Tipados Basicamente hay que hacer dos instanciar de nuevo programacion orientada a objetos ests datos estas almacenados en unas clases que crea visual studio debemos llamar a esas clases para que nos permita trabajar con los metodos iseralum y FILL para ellos se agrega el siguiente codigo:

 

Dim

ds As New DSprueba.AlumnosDataTable
Dim dt As NewDSpruebaTableAdapters.AlumnosTableAdapter

 

 Quiza lo puedan ver mejor desde la imagen:

AAAAAnew

 se seclararon dos variables ds y dt dt es la que usaremos para acceder al metono inseralumn agregando el codigo

 

dt.insertalum(TXTcedula.Text, TXTnombre.Text, TXTapellido.Text)

 

 AAAAAnew

en la imagen notamos como a agregar el codigo dt.inseralum( nos ayuda a ver que valores debemos agregar pidiendonos cedula, nombre y apellido, hay es donde se justifica el por que agregar nombre programaico a cada text box ya con solo hacer esto el boton guardar funciona vamos a agrega el metodo fill al boton cargar debemos hacer lo mismo si queremos lo que hacemos es sacar las primeras dos lineas de codigo para que funcione generalmente para cualquier boton asi solo agregamos el sigiente codigo presionando dos veces click en el boton cargar.

 

dt.Fill(ds.alumnos)

DGWdatos.DataSource = ds.alumnos

 

 

 

De esta manera al presionar sobre el boton gargar el datagrig se llenara de los datos de la tabla alumnos solo falta el boton salir presiona dos veces click y presiones el codigo

 

End

 

Espero les haya gusta proto les coloco el codigo completo y el para que descargen el ejemplo espero que les haya servido de mucho a quiene lo lean.

Autor: Ing. Javier J. Leal H.

Coordinador de Requerimientos en Traetelo.com, Trainer en Lourted, Amantes de nuevas Tecnologías Desarrollador es .NET, Windows 10, Influenciador y Orador en Actividades Tecnológicas Microsoft.

22 pensamientos en “Acceso a datos con Visual Basic.net

  1. Me agrega la fila en el datagrig pero no en la tabla

  2. Un saludo lo felicito por el trabajo desarrollado
    yo Pienso que el conocimiento debe ser compartido sin ponerle tantas trabas y buscando que semultiplique,,,,
    Gracias tan pronto apreda real,izare lo mismo de usted.
    Mil gracias
    Omar

  3. nada mal..pero podrias poner como hacerlo sin asistente…?

  4. Hola!

    Hice este ejmplo y en lo último me sale un error: ‘alumnos’ no es un miembro de ‘Accesoadatos.DSprueba.alumnosDataTable’, por favor ¿qué puede ser? ¿cómo se corrige?

  5. hola lo que pasa es que necesito un codigo donde le dija que me busque los regristo por cedula, lo que pasa es que poco se de programacion y tengo que hacer un trabajo donde realize esa busqueda gracias….

    eso si necesito esa ayuda urgente gracias…

    • Hola angui disculpame ver el comentario tan tarde eh estado bastante ocupado pero ya sali de vacaciones y puedo dedicarle un poco al blog esta prometido para ti hacer un articulo que te permita realizar esa funsion

  6. buenísimo justo lo que andaba buscando

  7. Hola,
    necesito guardar el contenido de un richtextbox (que contiene texto he imagenes) en un campo binario de una base de datos sql server 2008 utilizando este ejemplo y no hay caso. Me podrán ayudar? mi correo es adrian.boaglio@gmail.com.

    Saludos.

  8. se necesita q se tenga instalado el sqlserver en la pc para q se pueda realizar la conexion con la bd????????????

  9. Hola esta bueno pero no agrega los datos a la tabla… despues le doy doble click a la base de datos le doy a que muestre datos de la tabla y no muestra el nuevo dato agregado

  10. Hola esta muy bueno pero no agrega datos a la tabla…. despues le doy doble click a la base de datos le doy click derecho mostrar datos datos de tabla y no me muestra el nuevo dato agregado a que se debera?

    • Quiza se deba a que a veces solo se agregar datos con fines de prueba quiza si colocas el proyecto el Release podras ver los datos, a mi tambien me sucedio eso hace tiempo y lo soluciones asi.. me cuentas

      • En realidad no lo probe con Release porque nose que es eso…. pero alguien más arriba comento que eran datos de prueba y tiene razón…. mientras programas y vas probando se crea un ejecutable en la carpeta debug… y cada vez que compilas esta «nueva compilación» pisa a la que ya estaba por lo que tus datos se borran…. una manera de probarlo es compila y graba algunos datos después cierra la aplicación y compila nuevamente sin haberle hecho cambios al sistema verás que todavía están los datos, pero si le haces cambios a la aplicación estos se pisaran por los de la nueva aplicación

      • Excelente entonces esta confirmado que es asi. en visual Studio trae un Combobox Arriba donde te deja ejegir entre Debug Y Release cambialo y pruebas igual cuando ya la aplicacion este en produccion sabras que eso no pasara.

  11. error: ‘alumnos’ no es un miembro de ‘Accesoadatos.DSprueba.alumnosDataTable’ ; como solucionar este problema

    • Verifica que en la tabla tengas alumnos asi tl cual como lo escribes todo en minuscula Visual Basic es sencible a Mayusculas y Minusculas por lo tanto todo lo que escribas a nivel de variable debes escribirlo tal cual y en SQL Tambien

  12. hola tengo un proyecto de la universidad y quiero saber como almacenar los datos de una factura en una base de dato. sabiendo que el campo de no. de factura sera unico y los campos de lo productos seran varios ya que sera una venta…. ES URGENTE….

    • Bueno es lo mismo que ves en este tutorial la deferencia es que al insertar o agregar un valor nuevo debes buscar cual es el ultimo No. de factura para incrementarle uno y evitar te de un error, ya que si configuras la base de datos para que este valor sea único como aquí yo lo hago con la cédula si intentas ingresar un valor ya existente te dara error, no es nada diferente a lo qe tienes en este tutorial, solo captura cual es el ultimo numero que agregaste para incrementar uno al ingresar un nuevo valor y ya

Deja un comentario