Insertar datos en una base de datos Access 2007 desde                     Visual Basic 6                            Guía y...
ÍndicePaso 1. Crear una base de datos........................................................................................
Paso 1. Crear una base de datosCrear una base de datos en access 2007 llamada “Inventario” y guardela en una carpeta “inve...
Paso 4. Agregar la referencia ADO.Agrear la referencia de acceso a datos ADO.En el menú “Proyecto”, elegir “Referencias......
NOTA IMPORTANTE:Si utilizas Windows XP es muy probable que no tengas disponible la biblioteca “Microsoft ActiveXData Objec...
Paso 7. Diseñar el formularioDiseñar el formulario para la captura de los datos de un producto. El diseño debe parecerse a...
•   nombre de tipo String                        •   costo de tipo Currency                        •   descripción de tipo...
Dim descripcion as String         Verificar que cada uno de los campos del formulario que se consideren como datos        ...
Construir la instrucción SQL para almacenar los datos en la tabla de la base de datos.         sql = "INSERT INTO producto...
Al ejecutar el programa debe aparecer el formulario que diseñamos.Si no escribimos el nombre o alguno de los demás datos n...
Y al presionar el botón de “Guardar” debe aparecer el mensaje de aviso que los datos fueronalmacenados con éxito.Finalment...
Insertar datos en una base de datos Access 2007 desde Visual Basic                         Mayo 2010Daniel Martínez Ortiz ...
EjerciciosElabore cada uno de los 5 siguiente programas. Cada programa deberá tener su propia base dedatos y deberá insert...
Próxima SlideShare
Cargando en…5
×

Vb access

3.020 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
3.020
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
89
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Vb access

  1. 1. Insertar datos en una base de datos Access 2007 desde Visual Basic 6 Guía y ejercicios Programación Orientada a Objetos – Cuarto Semestre Conalep Ixtapaluca Daniel Martínez Ortiz daniel.martinez_236d@conalepmex.edu.mx http://danielmartinez236d.spaces.live.com Mayo del 2010
  2. 2. ÍndicePaso 1. Crear una base de datos..........................................................................................................3Paso 2. Crear la tabla............................................................................................................................3Paso 3. Abrir visual basic y crear un proyecto nuevo.............................................................................3Paso 4. Agregar la referencia ADO........................................................................................................4Paso 5. Modificar las propiedades del nombre del proyecto..................................................................5Paso 6. Modificar las propiedades del formulario..................................................................................5Paso 7. Diseñar el formulario.................................................................................................................5Paso 8. Programar el botón de cerrar....................................................................................................6Paso 9. Programar el botón de guardar.................................................................................................6Paso 10. Guardando el proyecto...........................................................................................................9Paso 11. Probando la aplicación............................................................................................................9Ejercicios.............................................................................................................................................12 Agencia automotriz - Catálogo de automoviles...............................................................................12 Restaurante – Platillos del menú.....................................................................................................12 Hospital – Ingreso de pacientes a urgencias...................................................................................12 Floreria – Arreglos florales..............................................................................................................12 Sistema administrativo – Captura de clientes..................................................................................12Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 2 de 13
  3. 3. Paso 1. Crear una base de datosCrear una base de datos en access 2007 llamada “Inventario” y guardela en una carpeta “inventarios”en “Mis Documentos”.Paso 2. Crear la tablaCrear una tabla, dentro de la base de datos, llamada “Producto” con los siguientes campos: Campo Tipo de dato productoId Autonumérico nombre Texto costo Moneda descripcion MemoLa vista de la base de datos, en access 2007, debe quedar como se ilustra a continuación.Paso 3. Abrir visual basic y crear un proyecto nuevo.Abrir visual basic y crear un proyecto nuevo de tipo “EXE estándar”Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 3 de 13
  4. 4. Paso 4. Agregar la referencia ADO.Agrear la referencia de acceso a datos ADO.En el menú “Proyecto”, elegir “Referencias...”Aparecerá una ventana titulada “Referencias”. En esta ventana buscar, en la lista de “Referenciasdisponibles” la opción “Microsoft ActiveX Data Object 6.0 Library” y activarla; presionar el botón“Aceptar”Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 4 de 13
  5. 5. NOTA IMPORTANTE:Si utilizas Windows XP es muy probable que no tengas disponible la biblioteca “Microsoft ActiveXData Objects 6.0 Library” debido a que esta biblioteca sólo se encuentra disponible en versiones deWindows Vista y posteriores. ¿Pero qué debemos hacer para activar el acceso a bases de datosAccess 2007 cuándo no tenemos esta biblioteca disponible? A continuación la solución.1er paso. Descargar del sitio de microsoft el driver adecuado para tener acceso a bases de datos deAccess 2007.http://www.microsoft.com/downloads/details.aspx?familyid=7554f536-8c28-4598-9b72-ef94e038c891De esta página de internet descargaremos un archivo llamado “AccessDatabaseEngine.exe”2do paso. Instalar el programa “AccessDatabaseEngine.exe” descargado en el paso anterior.3er paso. En el cuadro de dialogo de referencias activaremos “Microsoft ActiveX Data Objects 2.8Library” en vez de la versión 6.0.Eso es todo lo que hay que hacer, los pasos que continuan se deben realizar de forma normal.Paso 5. Modificar las propiedades del nombre del proyecto.Modificar las propiedades del nombre del proyecto para que se llame “Inventarios” en vez de“Proyecto1”.Paso 6. Modificar las propiedades del formulario.Modificar las propiedades del formulario para que llame “frmProductoAgregar” en vez de “Form1”Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 5 de 13
  6. 6. Paso 7. Diseñar el formularioDiseñar el formulario para la captura de los datos de un producto. El diseño debe parecerse a lasiguiente imagen.Los cuadros de texto deben llamarse “txtNombre”, “txtCosto” y “txtDescripcion”.Se debe modificar la propiedades “Multiline” a “True” y “ScrollBars” a “3 – Both” del cuadro de texto“txtDescripcion”. Ajuste el tamaño para que quede como en la imagen anterior.Los botones se deben llamar “btnGuardar” y “btnCerrar”Paso 8. Programar el botón de cerrarPara programar el botón de cerrar sólo se utiliza la instrucción Unload <nombreDelFormulario>.Paso 9. Programar el botón de guardarPara programar el botón de guardar debemos seguir una serie de pasos bien definidos que nosayudarán a escribir el código más fácil. Declarar la variable “conexion” que permitirá la conexión con la base de datos. Esta variable debe ser de tipo ADODB.Connection Declarar la variable “sql” que permitirá la construcción de la instrucción sql INSERT INTO para almacenar los datos en la base de datos. Esta variable debe ser de tipo String. Declarar una variable por cada campo del formulario, cada una de esta variables será del tipo de dato adecuado al valor que se pretende almacenar en la base de datos. Para este formulario necesitamos declarar 3 variables:Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 6 de 13
  7. 7. • nombre de tipo String • costo de tipo Currency • descripción de tipo String Verificar que cada uno de los campos del formulario que se consideren como datos obligatorios contenga un valor. En caso de que no tengan valor mostrar al usuario un mensaje indicando que le falto capturar ese dato. Asignar los valores de los cuadros de texto a las variables declaradas para ese proposito. Construir la instrucción SQL para almacenar los datos en la tabla de la base de datos. Establecer la conexión con la base de datos Ejecutar la instruccion SQL de inserción Cerrar la conexión con la base de datos Limpiar los campos del formulario Mostrar al usuario un mensaje de que los datos fueron agregados correctamente.Ahora, tomando como base los pasos anteriores para almacenar los datos en la base de datos,haremos la escritura del código. Sigamos, uno a uno, los pasos. Declarar la variable “conexion” que permitirá la conexión con la base de datos. Esta variable debe ser de tipo ADODB.Connection Dim conexion As ADODB.Connection Declarar la variable “sql” que permitirá la construcción de la instrucción sql INSERT INTO para almacenar los datos en la base de datos. Esta variable debe ser de tipo String. Dim sql As String Declarar una variable por cada campo del formulario, cada una de esta variables será del tipo de dato adecuado al valor que se pretende almacenar en la base de datos. Para este formulario necesitamos declarar 3 variables: • nombre de tipo String • costo de tipo Currency • descripción de tipo String Dim nombre As String Dim costo As CurrencyInsertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 7 de 13
  8. 8. Dim descripcion as String Verificar que cada uno de los campos del formulario que se consideren como datos obligatorios contenga un valor. En caso de que no tengan valor mostrar al usuario un mensaje indicando que le falto capturar ese dato. If (txtNombre.Text = "") Then MsgBox "El nombre del producto es obligatorio", vbExclamation + vbOKOnly, "Agregar producto" Exit Sub End If If (txtCosto.Text = "") Then MsgBox "El costo del producto es obligatorio", vbExclamation + vbOKOnly, "Agregar producto" Exit Sub End If If (txtDescripcion.Text = "") Then MsgBox "La descripción del producto es obligatorio", vbExclamation + vbOKOnly, "Agregar producto" Exit Sub End If If (Val(txtCosto.Text) <= 0) Then MsgBox "El valor del costo del producto es incorrecto", vbExclamation + vbOKOnly, "Agregar producto" Exit Sub End If Asignar los valores de los cuadros de texto a las variables declaradas para ese proposito. nombre = txtNombre.Text costo = FormatCurrency(Val(txtCosto.Text), 2) descripcion = txtDescripcion.TextInsertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 8 de 13
  9. 9. Construir la instrucción SQL para almacenar los datos en la tabla de la base de datos. sql = "INSERT INTO producto (nombre, costo, descripcion) VALUES (" & nombre & "," & costo & "," & descripcion & ")" Establecer la conexión con la base de datos Set conexion = New ADODB.Connection conexion.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=inventarios.accdb;Persist Security Info=False;" conexion.Open Ejecutar la instruccion SQL de inserción conexion.Execute sql Cerrar la conexión con la base de datos conexion.Close Limpiar los campos del formulario txtNombre.Text = "" txtCosto.Text = "" txtDescripcion.Text = "" Mostrar al usuario un mensaje de que los datos fueron agregados correctamente. MsgBox “Datos almacenados con éxito”Paso 10. Guardando el proyectoGuarde el proyecto y todos los formularios en la carpeta “inventarios” dentro de “Mis Documentos”,donde inicialmente almacenó el archivo de la base de datos.Cierre completamente visual basic y vuelva a abrir el proyecto desde el explorador de archivos, dandodoble clic en el icono del proyecto llamado “Inventarios.vbp”.Paso 11. Probando la aplicaciónHa llegado el momento de probar el programa y verificar si los datos se insertan correctamente.Primero que nada ejecutamos el programa. Si al momento de la ejecución aparecen errores, por favorregresé a los pasos anteriores y verifique que fue lo que hizó incorrectamente y corrijalo.Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 9 de 13
  10. 10. Al ejecutar el programa debe aparecer el formulario que diseñamos.Si no escribimos el nombre o alguno de los demás datos nos aparecerá un mensaje de error como elsiguiente, con esto podemos verificar que estamos haciendo la verificación de los datos obligatorios:Escribimos los datos de un producto:Nombre: Computadora LaptopCosto: $12,500.00Descripción: Computadora portatil con 350 GB de Disco Duro, 3 GB de memoria RAM, Pantalla LEDde 14.1”, 2.5 Kg de peso.Después de la captura el formulario deberia verse similar al siguiente:Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 10 de 13
  11. 11. Y al presionar el botón de “Guardar” debe aparecer el mensaje de aviso que los datos fueronalmacenados con éxito.Finalmente debemos abrir la base de datos de access 2007 para verificar que los datos capturadosen el formulario se encuentran correctamente insertados en la tabla. Como lo ilustra la siguienteimagen.Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 11 de 13
  12. 12. Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 12 de 13
  13. 13. EjerciciosElabore cada uno de los 5 siguiente programas. Cada programa deberá tener su propia base dedatos y deberá insertar la información que se pide en cada caso. Se consideraran puntos adicionalessi los programas incluyen campos adicionales a los incluidos en la lista de datos solicitados:Agencia automotriz - Catálogo de automoviles • Datos solicitados: marca, modelo, colores disponibles, cantidad de puertas, tamaño de rin, cantidad de cilindros, cantidad de kilometros por litro de combustible, precio al contado, caracteristicas adicionales, velocidad máxima.Restaurante – Platillos del menú. • Datos solicitados: Nombre del platillo, precio, lista de ingredientes principales, cantidad de calorias, se sirve en (desayuno, comida o cena).Hospital – Ingreso de pacientes a urgencias • Datos solicitados: Nombre del paciente, nombre del primer familiar responsable directo, telefono del primer familiar responsable directo, nombre del segundo familiar responsable directo, telefono del segundo familiar responsable directo, fecha y hora de ingreso al hospital, numero de seguro social, edad, sexo, descripción de los sintómas u observaciones de ingreso.Floreria – Arreglos florales • Datos solicitados: Nombre del arreglo, precio, tipo de flores que incluye, dimensiones (largo, ancho, alto), peso.Sistema administrativo – Captura de clientes • Datos solicitados: Nombre completo, RFC, Domicilio completo, fecha y hora de registro, tipo de persona (moral/fisica), teléfono, correo electrónico, comentarios adicionales.Insertar datos en una base de datos Access 2007 desde Visual Basic Mayo 2010Daniel Martínez Ortiz http://danielmartinez236d.spaces.live.com 13 de 13

×