Cómo administrar una base de datos?

Documentos relacionados
VISUAL BASIC Diseño de Formularios MDI y Menús - Proyectos Aplica

Cómo acceder a bases de datos?

BASES DE DATOS EN VISUAL BASIC ACCESS + SQL

Programación Gambas 3 Prof: Mileti, P. Acceso a base de datos SQLite desde Gambas 3.

UNIVERSIDAD LIBRE DE COLOMBIA FACULTAD INGENIERIA DE SISTEMAS ELECTIVA TECNICA II.NET Y SQL SERVER

Enviar Felicitación Navideña por con Off. 2007

GUÍA DE LABORATORIO Parte II

Como se declara un vector en Visual Basic 6.0

Conectar Flash con Access usando MDM Zinc

Soluciones propuestas

VISUAL BASIC 6 GUIA 4. Ing. Raymond Marquina 1

LABORATORIO Nº 1 Sistemas de Información asociados a los Formularios en Excel

Cómo nombrar variables ( 2&

CENTRO NACIONAL DE CAPACITACIÓN Y CALIDAD Coordinación de Informática

Tema 5. Aplicaciones MDI

Acceso a base de datos SQLite desde Gambas

Resolver triángulos en Visual Basic. Parte 3/3

APLICACIÓN COMPRAS EN SQLSERVER 2000

Formulario VBA en Excel. Creación del formulario. Actividad grado 10.

Caso práctico: Proyecto Usuario y contraseña

TUTORIAL DESARROLLO DE APLICACIONES PARA EVOLUTION CON MS ACCESS

DOCUMENTACIÓN DE POWER BUILDER 11. CONSULTA DINAMICA Las consultas dinámicas se realizan cuando power builder no soporta una consulta SQL.

PROCEDIMIENTOS Y FUNCIONES DE LA PROGRAMACIÓN (VISUAL BASIC)

Aplicaciones seguras con ClaseSeguridad

EXPORTAR VB.NET A EXCEL XP DESCRIPCIÓN. [EXPORT.NET TO EXCEL XP NEWCLASS PERÚ] 19 de enero de Por Dext >

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro

Práctica 02. Formularios

Programa de saludo 2 (resuelto)

Versatils. Apéndice. ODBC Orígenes de datos. ODBC Orígenes de datos.

El siguiente material didáctico es complementario al Punto 7 de la Unidad 2.

1

CTIBridgeClient V1.0 DOCUMENTACION DEL PROGRAMADOR

Manejo de datos BLOB con PHP y MySQL

INSTITUTO TECNOLÓGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES

" ##$ % & '( % & )*+),$ -##$ -!- $! "-./ - 0WebClass1-2

Ejemplo de programa básico en Visual Basic. Option Explicit, Form, Dim, String, etc. (CU00310A)

Programación Orientada a Objetos en Visual Basic

COMANDOS VISUAL BASIC. Comandos Básicos De Visual Basic. Programación Básica

Sociedad de Seguros de Vida del Magisterio Nacional. Sistema de Pignoraciones Web. Manual de Usuario. Marzo, 2012.

Como hacer un troyano en Visual Basic 6.0

APLICACIÓN COMPRAS EN SQLSERVER 2005

Fundamentos de la Programación

col Type mismatch cadena vacía fila 1 z + i 4 1 fila 2

Operación Microsoft Access 97

Lazarus Free Pascal Compiler

CUENTA DE EXPLOTACIÓN

Delegados y eventos en Visual Basic 2005

Prerrequisitos El alumno debe conocer y dominar los aspectos básicos de programación.

PHP Perfect SQL v1.0 (SQL perfectas en PHP)

Ataques a Aplicaciones de Bases de Datos

MODULO DE USUARIOS PARTE 1

Formularios. Formularios Diapositiva 1

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales

También añado a la clase Libro los siguientes métodos: (que programaré más adelante)

Comencemos a programar con. Entrega 22. Formularios (1)

UNIVERSIDAD LIBRE DE COLOMBIA ELECTIVA IV VISUAL BASIC GUIA No. 1

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

GUÍA DE TRABAJO GRADO 11. Articulación SENA Programación de Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

PROYECTO MIS IMÁGENES,

1. crear la base de datos BANCO, dentro de ella crear las siguientes tablas y establecer la siguiente relación.

CIMA. MANUAL DE USUARIO

Cómo gestionar menús en Drupal 7

GUÍA DE TRABAJO GRADO 11 Programación de. Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

Tema: MAPEO OBJETO RELACIONAL (ORM) - ADODB

Listados y Etiquetas personalizados de PrefGest WhitePaper Julio 2008

GUÍA DE TRABAJO N 11 LENGUAJE C# Programación de Software Articulación SENA Grado 10 Ing. Néstor Raúl Suarez Perpiñan Página 2 de 11

Menús. Gestor de Menús

Manual de Usuario del Sistema De Identificación de Usuarios

Guía para el registro

Modulo 1 El lenguaje Java

En este ejemplo también vamos a crear la capa Entidades que va a servir para modelar nuestra base de datos.

Visual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario

USANDO SERVLETS EN UN SERVIDOR WEB RESIN

Curso de Excel Avanzado

MÓDULO CÉDULAS DE AUDITORÍA DESDE EXCEL

Organizando mi clase en el GES Material de apoyo

Visual Basic for Applications

Lazarus Free Pascal Compiler

Programa completo de resolución de ecuaciones de 2º grado

CREAR USERFORMS. Silvia Mayoral USER-FORMS

Cómo crear su perfil de WOK?

FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA INDUSTRIAL

FUNDAMENTOS DE PROGRAMACIÓN. SEPTIEMBRE 2005

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

1 CREANDO SOLUCIONES A MEDIDA

Pantalla ENW URL LOGIN

Uso de SQLite2 en Gambas2 Creación de un programa paso a paso

Tutorial de MS Access Un sistema de Bases de Datos Relacional. Profesores: Hugo Mora, Ignacio Casas

MACROS Y FORMULARIOS

Manual de ACCESS Intermedio

BASES DE DATOS RELACIONALES Microsoft Access

Transcripción:

Cómo administrar una base de datos? 1- Lo primero que tenemos que hacer es crear una base de datos Access con las siguientes características: Una tabla llamada países, con los campos idpais (autonumérico), nombre (texto), codarea (número). Darle un nombre representativo a la base de datos. 2- Crear una aplicación Visual Basic con los siguientes formularios: Para agregar un DataGrid al formulario previamente hay que agregarlo a la barra de herramientas de la siguiente forma: Ir al menú Proyecto, seleccionar Componentes y de la solapa Controles tildar la opción Microsoft DataGrid Controls 6.0 (puede haber otras versiones). Luego arrastrarlo al formulario como cualquier otro objeto.

Referencias necesarias: En el menú Proyecto/Referencias... selecciona Microsoft ActiveX Data Objects 2.6 Library o cualquiera se las versiones, la única que no deberías seleccionar es la 2.0 que ya está obsoleta Una vez añadida la referencia a los objetos ADO, puedes usar los objetos expuestos por esta librería. En este ejemplo usaremos dos de esos objetos, que serán los que en la mayoría de los casos usemos: el objeto Connection y el objeto Recordset. El primero es el que permite acceder a la base de datos y el segundo será el que acceda a los datos propiamente dicho. Código del formulario de edición Option Explicit 'para indicar si se está haciendo un alta o una edición de registro (usado al guardar las modificaciones) Dim tipomodif As String Dim hayregistroactivo As Boolean Dim sql As String Dim registroactual As String Dim colorh As String 'color para campos habilitados Dim colornh As String 'color para campos no habilitados Dim conn As New ADODB.Connection Dim base As String Private Sub Form_Load() colorh = RGB(255, 255, 255) 'blanco colornh = RGB(247, 241, 205) ' RGB(229, 253, 229) 'cremita 'CONECTAR A UNA BD base = "E:\Fundamentos de Informatica\Tema5 Visual Basic\BaseDatos\ABMCFI\FI.mdb" Set conn = New ADODB.Connection conn.cursorlocation = aduseclient conn.connectionstring = "provider=microsoft.jet.oledb.4.0;data Source=" & base & ";" conn.open tipomodif = "0" registroactual = "" Sub mostrarerror(byval mensajeerror As String) 'Muestra un mensaje de error definido por el programador MsgBox mensajeerror, vbcritical, "Error" Sub Barra() cmdagregar.visible = True 'agregar cmdeditar.visible = True 'editar cmdeditar.enabled = hayregistroactivo cmdeliminar.visible = True 'eliminar cmdeliminar.enabled = hayregistroactivo cmdaceptar.visible = False 'aceptar

cmdcancelar.visible = False 'cancelar Sub modoedicionbarra() cmdagregar.visible = False 'agregar cmdeditar.visible = False 'editar cmdeliminar.visible = False 'eliminar cmdaceptar.visible = True 'aceptar cmdcancelar.visible = True 'cancelar Sub modoedicion() 'habilita los controles de ingreso de datos modoedicionbarra txtcodigo.enabled = False txtcodigo.backcolor = colornh cmdbuscar.enabled = False txtnombre.enabled = True txtnombre.backcolor = colorh txtnombre.setfocus txtcodigoarea.enabled = True txtcodigoarea.backcolor = colorh Sub () 'deshabilita los controles de ingreso de datos Barra txtcodigo.enabled = True txtcodigo.backcolor = colorh cmdbuscar.enabled = True txtnombre.enabled = False txtnombre.backcolor = colornh txtcodigoarea.enabled = False txtcodigoarea.backcolor = colornh Private Sub cmdagregar_click() tipomodif = "alta" modoedicion Private Sub cmdeditar_click() tipomodif = "edición" modoedicion Private Sub cmdeliminar_click() Dim msg As Integer

msg = MsgBox("Esta acción no se puede cancelar" & vbcr & " Está seguro de que desea eliminar el presente registro?", 49, "Confirmación") If msg = 1 Then sql = "delete from paises where idpais = " & Val(registroActual) conn.execute sql tipomodif = "0" sql = "" Private Sub cmdaceptar_click() Dim resultado As String resultado = validar 'verifica que todos los datos obligatorios en los registros a insertar/actualizar hayan sido ingresados If resultado = "0" Then If tipomodif = "alta" Then sql = "insert into paises(nombre,codarea) values('" & txtnombre & "', " & txtcodigoarea & ")" '"insert into impuestos (impuesto) values('" & v_impuesto & "')" conn.execute sql 'busco el id del registro agregado para mostrarlo y lo asigno a la casilla del codigo sql = "select max(idpais) from paises" rs_datos.open sql, conn, adopenforwardonly, adlockreadonly registroactual = Trim(Str(rs_datos(0))) rs_datos.close Set rs_datos = Nothing txtcodigo.text = registroactual Call txtcodigo_keypress(13) 'para forzar el evento hayregistroactivo = True tipomodif = "0" ElseIf tipomodif = "edición" Then sql = "update paises set nombre = '" & txtnombre & "', codarea = " & txtcodigoarea & " where idpais = " & Val(registroActual) conn.execute sql hayregistroactivo = True txtcodigo.text = registroactual Else mostrarerror (resultado) Exit Sub sql = ""

Private Sub cmdcancelar_click() If tipomodif = "edición" Then Call txtcodigo_keypress(13) 'para forzar el evento Else tipomodif = "0" Private Sub txtcodigo_change() If Then Private Sub txtcodigo_keypress(keyascii As Integer) If KeyAscii = 13 And txtcodigo.text <> "" Then KeyAscii = 0 If IsNumeric(txtCodigo.Text) Then recuperarregistro Sub recuperarregistro() registroactual = txtcodigo.text 'busco los datos del registro y cargo los objetos sql = "select idpais, nombre, codarea from paises where idpais = " & registroactual rs_datos.open sql, conn, adopenforwardonly, adlockreadonly If Not rs_datos.eof Then txtnombre.text = rs_datos!nombre txtcodigoarea.text = rs_datos!codarea rs_datos.close Set rs_datos = Nothing hayregistroactivo = True cmdeditar.enabled = True 'editar cmdeliminar.enabled = True 'eliminar Else

Private Sub cmdbuscar_click() 'mostrar formulario de busqueda Set frmbuscarpaises.llamador = Me Me.Tag = "" 'tag es una propiedad para almacenar valores temporalmente. Almaceno ahí el resultado de la búsqueda frmbuscarpaises.show 1 txtcodigo.text = Me.Tag If txtcodigo.text <> "" Then Call txtcodigo_keypress(13) 'para forzar el evento Else 'verifica que todos los datos obligatorios en los registros a insertar/actualizar hayan sido ingresados Function validar() As String If Then validar = validar + "Debe ingresar el nombre del país" + vbcr txtnombre.setfocus If Not IsNumeric(txtCodigoArea.Text) Or Then validar = validar + "El código de área debe ser entero" + vbcr txtcodigoarea.setfocus If validar = "" Then validar = "0" End Function Código del formulario de búsqueda Option Explicit Dim hayregistroactivo As Boolean Public llamador As Form 'para devolver el elemento seleccionado Dim conn As New ADODB.Connection Dim base As String Private Sub Form_Load() modobarra With dgresultados.enabled = False

.HeadFont.Bold = True.MarqueeStyle = dbghighlightrow End With 'CONECTAR A UNA BD base = "E:\Fundamentos de Informatica\Tema5 Visual Basic\BaseDatos\ABMCFI\FI.mdb" Set conn = New ADODB.Connection conn.cursorlocation = aduseclient conn.connectionstring = "provider=microsoft.jet.oledb.4.0;data Source=" & base & ";" conn.open recuperar Sub modobarra() cmdaceptar.enabled = hayregistroactivo 'aceptar Private Sub cmdaceptar_click() devolvercodigo Private Sub cmdcancelar_click() Unload Me Private Sub cmdbuscar_click() recuperar Private Sub cmdlimpiar_click() modobarra dgresultados.enabled = False txtnombre.setfocus Sub recuperar() Dim sql As String sql = "select idpais as Código, nombre as Nombre, codarea as Código_Área from paises where nombre like '" & txtnombre.text & "%' order by nombre asc" rs_datos.cursorlocation = aduseclient rs_datos.open sql, conn, adopenforwardonly, adlockreadonly Set dgresultados.datasource = rs_datos definircolumnas If rs_datos.recordcount > 0 Then dgresultados.enabled = True Sub definircolumnas() With dgresultados.columns(0).width = 1000.Columns(1).Width = 2400

.Columns(2).Width = 1300 End With Sub devolvercodigo() dgresultados.col = 0 'columna que devuelve al seleccionar la fila llamador.tag = dgresultados.text Unload Me Private Sub dgresultados_click() If dgresultados.enabled = True Then hayregistroactivo = True modobarra