PRACTICA DE BASES DE DATOS EN VISUAL BASIC

13
PRACTICA DE BASES DE DATOS EN VISUAL BASIC. USO DEL CONTROL ADO. (ACTIVEX DATA OBJECT). I.- CREACION DE LA BASE DE DATOS. 1.- CREAR UNA CARPETA PARA GUARDAR LA BASE DE DATOS Y EL PROGRAMA EN VISUAL BASIC, PARA ESTE EJEMPLO PUEDE SER: ESCUELA 2.- ENTRAR AL PAQUETE ACCESS. CREAR UNA BASE DE DATOS LLAMADA: ESCUELA 3.- CREAR DOS TABLAS: DATOS_PERSONALES Y DATOS_ESCOLARES ESTRUCTURA: CLAVE TEXTO 10 CLAVE TEXTO 10 NOMBRE TEXTO 40 ESPECIALIDAD TEXTO 15 DIRECCION TEXTO 25 SEMESTRE TEXTO 3 TUTOR TEXTO 30 GRUPO TEXTO 1 TELEFONO TEXTO 15 GENERACION TEXTO 10 FECHA_NAC FECHA NOTA: CREAR LA CLAVE PRINCIPAL DE CADA TABLA EN EL CAMPO CLAVE. 4.- CAPTURA 5 REGISTROS(DE PRUEBA) RELACIONADOS EN CADA TABLA. EJEMPLO: 12345, MARTINEZ PEREDA JUAN, CARRANZA 25, PEDRO MARTINEZ, 3-30-00, 13/06/1990 12345, INFORMATICA, IV, D, 2008-2010 5.- GUARDAR LA BASE DE DATOS Y SALIR DE ACCESS. II.- MANTENIMIENTO DATOS PERSONALES. 1.- ABRIR Y CREAR UNA NUEVA APLICACIÓN EN VISUAL BASIC. 2.- PEGAR EN EL FORMULARIO: 3 FRAME, 6 LABEL, 6 TEXTBOX, 9 COMMAND. 3.- MODIFICAR LOS ATRIBUTOS COMO SE MUESTRA: Form1 Nombre FrmMantenPersonales Caption Mantenimiento Datos Personales BorderStyle 3-Fixed Dialog WindowState 2-Maximized Frame1 Nombre FraIngres o Caption Frame2 Nombre FraNavegador Caption Navegador Frame3 Nombre FraMantenimient o Caption Mantenimiento Label1 Nombre LblClave Captio n Clave: Label2 Nombre LblNombre Captio Nombre: 1

Transcript of PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Page 1: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

PRACTICA DE BASES DE DATOS EN VISUAL BASIC.USO DEL CONTROL ADO. (ACTIVEX DATA OBJECT).

I.- CREACION DE LA BASE DE DATOS.1.- CREAR UNA CARPETA PARA GUARDAR LA BASE DE DATOS Y EL PROGRAMA EN VISUAL BASIC, PARA ESTE EJEMPLO PUEDE SER: ESCUELA2.- ENTRAR AL PAQUETE ACCESS. CREAR UNA BASE DE DATOS LLAMADA: ESCUELA3.- CREAR DOS TABLAS: DATOS_PERSONALES Y DATOS_ESCOLARES

ESTRUCTURA: CLAVE TEXTO 10 CLAVE TEXTO 10 NOMBRE TEXTO 40 ESPECIALIDAD TEXTO 15 DIRECCION TEXTO 25 SEMESTRE TEXTO 3 TUTOR TEXTO 30 GRUPO TEXTO 1 TELEFONO TEXTO 15 GENERACION TEXTO 10 FECHA_NAC FECHA

NOTA: CREAR LA CLAVE PRINCIPAL DE CADA TABLA EN EL CAMPO CLAVE.4.- CAPTURA 5 REGISTROS(DE PRUEBA) RELACIONADOS EN CADA TABLA. EJEMPLO:

12345, MARTINEZ PEREDA JUAN, CARRANZA 25, PEDRO MARTINEZ, 3-30-00, 13/06/199012345, INFORMATICA, IV, D, 2008-2010

5.- GUARDAR LA BASE DE DATOS Y SALIR DE ACCESS.

II.- MANTENIMIENTO DATOS PERSONALES.1.- ABRIR Y CREAR UNA NUEVA APLICACIÓN EN VISUAL BASIC.

2.- PEGAR EN EL FORMULARIO: 3 FRAME, 6 LABEL, 6 TEXTBOX, 9 COMMAND.3.- MODIFICAR LOS ATRIBUTOS COMO SE MUESTRA:Form1Nombre FrmMantenPersonalesCaption Mantenimiento Datos PersonalesBorderStyle 3-Fixed DialogWindowState 2-Maximized

Frame1Nombre FraIngresoCaption

Frame2Nombre FraNavegadorCaption Navegador

Frame3Nombre FraMantenimientoCaption Mantenimiento

Label1Nombre LblClaveCaption Clave:

Label2

Nombre LblNombreCaption Nombre:

Label3Nombre LblDireccionCaption Direccion:

Label4Nombre LblTutorCaption Tutor:

Label5Nombre LblTelefonoCaption Telefono:

Label6Nombre LblFechaNacCaption Fecha Nacimiento:

Text1Nombre TxtClaveLocked TrueText

1

Page 2: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Text2Nombre TxtNombreLocked TrueText

Text3Nombre TxtDireccionLocked TrueText

Text4Nombre TxtTutorLocked TrueText

Text5Nombre TxtTelefonoLocked TrueText

Text6Nombre TxtFechaNacLocked TrueText

Command1Nombre CmdPrimeroCaptionPicture first.gifStyle 1-GraphicalToolTipText Primero

Command2Nombre CmdAnteriorCaptionPicture back.gifStyle 1-GraphicalToolTipText Anterior

Command3Nombre CmdSiguienteCaptionPicture next.gifStyle 1-GraphicalToolTipText Siguiente

Command4Nombre CmdUltimoCaptionPicture last.gifStyle 1-GraphicalToolTipText Ultimo

Command5Nombre CmdNuevoCaptionPicture new.gifStyle 1-GraphicalToolTipText Nuevo

Command6Nombre CmdEditarCaptionPicture edit.gifStyle 1-Graphical

ToolTipText Editar

Command7Nombre CmdGuardarCaptionPicture save.gifStyle 1-GraphicalToolTipText Guardar

Command8Nombre CmdEliminarCaptionPicture delete.gifStyle 1-GraphicalToolTipText Eliminar

Command9Nombre CmdSalirCaption &SalirPicture exit.gifStyle 1-Graphical

2

Page 3: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Nota: Los archivos de los iconos graficos de tipo GIF, seran proporcionados por el Profesor.

4.- Antes de ingresar código a la aplicación, debemos tener en cuenta que para poder utilizar los objetos ADO en una aplicación Visual Basic es necesario cargar la librería correspondiente. Para ello seleccione el menú Proyecto y elija la opción Referencias. En el cuadro de diálogo Referencias seleccione la opción Microsoft ActiveX Data Objects 2.1 Library, tal como se indica en la figura siguiente:

5.- Escribir el codigo siguiente:

Dim Cn As ADODB.ConnectionDim Rs As ADODB.Recordset

Private Sub Form_Load()ModoEditar False Set Cn = New ADODB.Connection Set Rs = New ADODB.Recordset Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=D:\lap toshiba\FEB-JUL'09\ESCUELA\ESCUELA.MDB;" & _ "Persist Security Info=False" Rs.ActiveConnection = Cn Rs.CursorType = adOpenKeyset Rs.LockType = adLockOptimistic Rs.Open "Select * From Datos_Personales" Set TxtClave.DataSource = Rs TxtClave.DataField = "Clave" Set TxtNombre.DataSource = Rs TxtNombre.DataField = "Nombre" Set TxtDireccion.DataSource = Rs TxtDireccion.DataField = "Direccion" Set TxtTutor.DataSource = Rs TxtTutor.DataField = "Tutor" Set TxtTelefono.DataSource = Rs TxtTelefono.DataField = "Telefono" Set TxtFechaNac.DataSource = Rs TxtFechaNac.DataField = "Fecha_Nac"End Sub

Private Sub CmdAnterior_Click()Rs.MovePreviousIf Rs.BOF Then Rs.MoveFirst MsgBox "Estamos en el primer registro"End IfEnd Sub

Private Sub CmdEditar_Click()ModoEditar TrueEnd Sub

Private Sub CmdEliminar_Click()Rs.DeleteRs.MoveNextIf Rs.EOF Then Rs.MoveLastEnd IfEnd Sub

Private Sub CmdGuardar_Click()Rs.UpdateModoEditar FalseEnd Sub

Private Sub CmdNuevo_Click()Rs.AddNewModoEditar TrueEnd Sub

Private Sub CmdPrimero_Click()Rs.MoveFirstEnd Sub

Private Sub CmdSalir_Click()Unload MeEnd Sub

Private Sub CmdSiguiente_Click()Rs.MoveNextIf Rs.EOF Then Rs.MoveLast MsgBox "Estamos en el último registro"End IfEnd Sub

Private Sub CmdUltimo_Click()Rs.MoveLastEnd Sub

Los siguientes procedimientos, capturarlos en un area en blanco del formulario o del codigo:

Private Sub ModoEditar(ByVal Ok As Boolean) TxtClave.Locked = Not Ok TxtNombre.Locked = Not Ok TxtDireccion.Locked = Not Ok TxtTutor.Locked = Not Ok TxtTelefono.Locked = Not Ok TxtFechaNac.Locked = Not Ok CmdNuevo.Enabled = Not Ok CmdEditar.Enabled = Not Ok

3

Page 4: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

CmdGuardar.Enabled = Ok CmdEliminar.Enabled = Not Ok If Ok Then TxtClave.SetFocusEnd Sub

Private Sub Form_Unload(Cancel As Integer)If MsgBox("¿Desea terminar la aplicación?", _

vbQuestion + vbYesNo, "Pregunta") = vbYes Then End Else Cancel = True End IfEnd Sub

6.- Antes de ejecutar la aplicacion, hay que guardarla en la carpeta ESCUELA, el formulario sera nombrado: FrmMantenPersonales, y el proyecto se debe llamar: MantenDatosPersonales.

III.- CREACION DE UNA CONSULTA DE DATOS PERSONALES.1.- CREAR UN NUEVO PROYECTO EN VISUAL BASIC.2.- ANTES DE INSERTAR LOS CONTROLES, SELECCIONAR LA OPCION PROYECTO, COMPONENTES, Y BUSCAR EL CONTROL MICROSOFT DATAGRID CONTROL 6.0 (OLEDB), COMO SE MUESTRA

3.- INSERTAR LOS CONTROLES: 3 LABEL, 3 COMBOBOX, 1 COMMANDBUTTON Y 1 DATAGRID.Modificar sus propiedades como se indica:

Form1Nombre FrmConsultaPersonalesCaption Consulta de Datos PersonalesBorderStyle 3-Fixed DialogWindowState 2-Maximized

Combo1Nombre CboPersonalText

Combo2Nombre CboGrupoText

Combo3Nombre CboSemestreText

DataGrid1Nombre DbgrdPersonalFont Arial (Negrita 10)HeadFont Arial (Negrita 10)

Command1Nombre CmdBuscarCaption &BuscarDefault TrueCommand2Nombre CmdTerminarCaption

4

Page 5: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

4.- A CONTINUACIÓN DEBE INGRESAR EL CÓDIGO QUE SE MUESTRA EN SEGUIDA:Dim Cn As ADODB.ConnectionDim RsEspecialidad As ADODB.RecordsetDim RsClave As ADODB.RecordsetDim RsGrupo As ADODB.RecordsetDim RsSemestre As ADODB.Recordset

Private Sub CmdBuscar_Click() Set RsClave = New ADODB.Recordset RsClave.ActiveConnection = Cn RsClave.CursorType = adOpenStatic RsClave.LockType = adLockReadOnly RsClave.CursorLocation = adUseClient RsClave.Open "Select Nombre As Nombre, " & _ "Tutor As Tutor " & _ "From DATOS_PERSONALES Inner Join DATOS_ESCOLARES " & _ "On DATOS_PERSONALES.Clave=DATOS_ESCOLARES.Clave " & _ "Where Especialidad = '" & CboPersonal.Text & "' " & _ "And Grupo = '" & CboGrupo.Text & "'" & _ "And Semestre = '" & CboSemestre.Text & "'" Set DbgrdPersonal.DataSource = RsClaveEnd Sub

Private Sub Form_Load()Set Cn = New ADODB.Connection Set RsEspecialidad = New ADODB.Recordset Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=D:\lap toshiba\FEB-JUL'09\ESCUELA\ESCUELA.MDB;" & _ "Persist Security Info=False" RsEspecialidad.ActiveConnection = Cn RsEspecialidad.CursorType = adOpenStatic RsEspecialidad.LockType = adLockOptimistic RsEspecialidad.CursorLocation = adUseClient RsEspecialidad.Open "Select Distinct Especialidad From DATOS_ESCOLARES" Do While Not RsEspecialidad.EOF() CboPersonal.AddItem RsEspecialidad("Especialidad") RsEspecialidad.MoveNext Loop Set RsGrupo = New ADODB.Recordset RsGrupo.ActiveConnection = Cn RsGrupo.CursorType = adOpenStatic RsGrupo.LockType = adLockOptimistic RsGrupo.CursorLocation = adUseClient RsGrupo.Open "Select Distinct Grupo From DATOS_ESCOLARES" Do While Not RsGrupo.EOF() CboGrupo.AddItem RsGrupo("Grupo") RsGrupo.MoveNext Loop Set RsSemestre = New ADODB.Recordset RsSemestre.ActiveConnection = Cn RsSemestre.CursorType = adOpenStatic RsSemestre.LockType = adLockOptimistic RsSemestre.CursorLocation = adUseClient RsSemestre.Open "Select Distinct Semestre From DATOS_ESCOLARES" Do While Not RsSemestre.EOF() CboSemestre.AddItem RsSemestre("Semestre") RsSemestre.MoveNext LoopEnd Sub

5

Page 6: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Private Sub Form_Unload(Cancel As Integer) Cn.Close Set Cn = NothingEnd Sub

Private Sub CmdTerminar_Click() EndEnd Sub

5.- Antes de ejecutar la aplicacion, hay que guardarla en la carpeta ESCUELA, el formulario sera nombrado: FrmConsultaPersonales, y el proyecto se debe llamar: ConsultaDatosPersonales.

IV.- CREACION DE UN REPORTE.1.- CREAR UN NUEVO PROYECTO.AL FORMULARIO Form1 MODIFICAR LAS PROPIEDADES Name=FrmReporte, Caption=Reporte de Datos, WindowState=2-Maximized.

2.- INSERTAR UN ENTORNO DE DATOS, CLICKANDO LA OPCION PROYECTO Y DESPUES LA OPCION AGREGAR DATA ENVIRONMENT.

CAMBIAR EL NOMBRE DEL DataEnvironment1 EN LA VENTANA DE PROPIEDADES POR DeDatos. TAMBIEN MODIFICAR EL NOMBRE DE Connection1 POR CnDatos.COLOCAR EL PUNTERO ENCIMA DE LA CONEXIÓN CnDatos Y CON EL BOTON DERECHO DEL RATON DESPLEGAR EL MENU CONTEXTUAL CORRESPONDIENTE Y ESCOGER LA OPCION PROPIEDADES.

MARCAR LA OPCION Microsoft Jet 4.0 OLE DB Provider, Y HACER CLICK EN EL BOTON Siguiente.SELECCIONAR EL NOMBRE DE LA BASE DE DATOS ESCUELA Y HACER CLICK EN EL BOTON Probar Conexión.

6

Page 7: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

DAR CLICK EN EL BOTON Aceptar. 3.- COLOCAR EL PUNTERO ENCIMA DE LA CONEXIÓN CnDatos Y CON EL BOTON DERECHO SELECCIONAR Agregar Comando. CAMBIAR EL NOMBRE DE Command1 POR CmDatos.ACTIVAR EL MENU CONTEXTUAL DEL COMANDO CmDatos Y SLECCIONAR PROPIEDADES, Y EN EL ORIGEN DE DATOS ESCOGER Tabla Y EN EL NOMBRE DE OBJETO ESCOGER DATOS_PERSONALES.

DAR CLICK EN ACEPTAR. TENEMOS EN SEGUIDA LA VENTANA:

DEL MENU Proyecto ESCOGER Agregar DataReport.

7

Page 8: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

DEL DATAENVIRONMENT DeDatos, SELECCIONAR Y ARRASTRAR A LA SECCION DETALLE LOS CAMPOS: Clave, Nombre, Direccion Y Tutor. HACER CLICK EN LA SECCION DETALLE EN UNA AREA DONDE NO HAYA NINGUNO DE LOS CAMPOS ARRASTRADOS Y HACER CLICK EN LA PARTE IZQUIERDA DE CADA CAMPO (ETIQUETAS) Y ARRASTRARLOS A LA SECCION ENCABEZADO DE PAGINA, ACOMODAR TANTO LA ETIQUETA COMO EL CAMPO EN COLUMNAS. INSERTAR UN CONTROL RptLabel A LA SECCION DEL ENCABEZADO DE INFORME Y ESCRIBIR EN EL CAPTION LISTADO DE ALUMNOS.CAMBIAR EL NOMBRE DEL DATAREPORT1 POR DtaListado Y EN EL CAPTION ESCRIBIR LISTADO DE ALUMNOS.

DE LAS PROPIEDADES DE DtaListado, MODIFICAR LAS PROPIEDADES DataSource=DeDatos Y DESPUES DataMember=CmDatos.4.- REGRESAR AL FORMULARIO FrmReporte Y AGREGAR DOS BOTONES DE COMANDO:Command1Nombre CmdVerReporteCaption Ver ReporteCommand2Nombre CmdSalirCaption SalirESCRIBIR EL CODIGO SIGUIENTE:Private Sub CmdSalir_Click()EndEnd Sub

8

Page 9: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Private Sub CmdVerReporte_Click()DtaListado.ShowEnd Sub

5.- GUARDAR EL PROYECTO CON EL NOMBRE Reporte, EL FORMULARIO CON FrmReporte, EL DATAENVIRONMENT CON DeDatos Y EL DATAREPORT CON DtaListado.6.- EJECUTAR LA APLICACIÓN PARA VER EL REPORTE:

V.- CREACION DE UN SISTEMA ESCOLAR.ESTE PROYECTO INTEGRA LAS TRES APLICACIONES ANTERIORES, CON UNOS PEQUEÑOS CAMBIOS, ASIMISMO SE CREA UN FORMULARIO PARA DAR UNA CONTRASEÑA Y UNA PANTALLA PRINCIPAL QUE INTEGRA UN MENU.

1.- FORMULARIO PARA LA CONTRASEÑA.

Form1Nombre FrmPasswordCaption Password del SistemaWindowState 2-MaximizedImage1Nombre Image1Picture Arch.jpgLabel1Nombre LblLeerCaption Introduce el PasswordCommand1Nombre CmdAceptar

Caption AceptarCommand2Nombre CmdSalirCaption Salir

TextBox1Nombre TxtPasswordPaswordChar

*

TextCODIGO:Dim cuenta As Integer

Private Sub CmdAceptar_Click()If TxtPassword = "escolares" Then FrmPassword.Hide FrmPrincipal.Show Else MsgBox ("INCORRECTA, Te quedan " & 2 - cuenta & " intentos") cuenta = cuenta + 1 TxtPassword.Text = "" TxtPassword.SetFocus End If If cuenta = 3 Then EndEnd Sub

Private Sub CmdSalir_Click()Unload MeEnd Sub

9

Page 10: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

Private Sub Form_Load()cuenta = 0

End Sub

2.- FORMULARIO PRINCIPAL.

Form1Nombre FrmPrincipalCaption Sistema de Datos de AlumnosWindowState 2-MaximizedMenu

Caption NameMantenimiento MnuMantenimientoDatos Personales MnuDatosPersonalesDatos Escolares MnuDatosEscolaresConsultas MnuConsultasImpresion MnuImpresionListas MnuListasSalir MnuSalirPrivate Sub Form_Load()MsgBox ("BIENVENIDO AL SISTEMA")End Sub

Private Sub MnuConsultas_Click()FrmPrincipal.HideFrmConsultaPersonales.ShowEnd Sub

Private Sub MnuDatosPersonales_Click()FrmPrincipal.HideFrmMantenPersonales.ShowEnd Sub

Private Sub MnuListas_Click()FrmPrincipal.HideFrmReporte.ShowEnd Sub

Private Sub MnuSalir_Click()EndEnd Sub

10

Page 11: PRACTICA DE BASES DE DATOS EN VISUAL BASIC

3.- AGREGAR LOS FORMULARIOS EXISTENTES DE LOS TRES PROYECTOS ANTERIORES:FrmMantenPersonales, FrmConsultaPersonales, FrmReporte:MODIFICAR EL PROCEDIMIENTO SIGUIENTE DEL FORMULARIO FrmMantenPersonales Y PONER UN COMENTARIO A LA INSTRUCCIÓN END Y AGREGAR LAS LINEAS EN NEGRITAS:

Private Sub Form_Unload(Cancel As Integer) If MsgBox("¿Desea terminar la aplicación?", _vbQuestion + vbYesNo, "Pregunta") = vbYes Then 'End FrmMantenPersonales.Hide FrmPrincipal.Show Else Cancel = True End IfEnd Sub

MODIFICAR EL PROCEDIMIENTO SIGUIENTE DEL FORMULARIO FrmConsultaPersonales Y PONER UN COMENTARIO A LA INSTRUCCIÓN END Y AGREGAR LAS LINEAS EN NEGRITAS::

Private Sub CmdTerminar_Click()'EndFrmConsultaPersonales.HideFrmPrincipal.ShowEnd Sub

MODIFICAR EL PROCEDIMIENTO SIGUIENTE DEL FORMULARIO FrmReporte Y PONER UN COMENTARIO A LA INSTRUCCIÓN END Y AGREGAR LAS LINEAS EN NEGRITAS::

Private Sub CmdTerminar_Click()'EndFrmReporte.HideFrmPrincipal.ShowEnd Sub

4.- PARA TERMINAR EL PROYECTO IR A LA OPCION PROYECTO Y AGREGAR ARCHIVO, ABRIR TANTO DeDatos COMO DtaListado.

5.- GUARDAR EL PROYECTO CON EL NOMBRE Sistema Escolar Y TODOS LOS DEMAS COMPONENTES RESPETAR SUS NOMBRES ORIGINALES.6.- EJECUTAR LA APLICACIÓN.

NOTA: FALTA AGREGAR UN FORMULARIO PARA EL MANTENIMIENTO DE LOS DATOS ESCOLARES QUE ESTA EN EL MENU DEL FORMULARIO PRINCIPAL. ESTO ES SOLO UN EJEMPLO DE CÓMO SE TRABAJA EN UN PROYECTO DE BASE DE DATOS CON VISUAL BASIC.

11