Microsoft Access


Conceptos Básicos de Bases de Datos

Campos, Registros, Claves y Atributos

Toda Base de datos esta compuesta por un conjunto de tablas. Las tablas conforman una recopilación de datos referente a un asunto en particular, donde luego se puede consultar y ordenar dichos datos para así obtener información. Como por ejemplo la confección de una agenda Telefónica.
Las tablas están compuestas por registros (renglones) y campos (columnas), pueden o no tener un campo clave y esta clave puede ser compuesta (mas de un campo clave) o simple; y además entre éstas tablas obtenemos relaciones.
Los Campos tienen atributos, y son los que definen que tipo de dato pueden llegar a tener estas columnas. Ej numérico, decimal, $$, etc.
Todos esto es lo que veremos en los conceptos básicos y empezaremos con esta grafica que tiene algunos de estos conceptos.

Access para principiantes


Campo es la columna de una tabla donde se ingresan los datos.
Las claves son campos por el cual nosotros sabemos que podemos identificar en forma univoca a un registro. Ej: legajo, DNI, etc.. Es por el campo por el cual después buscaremos un registro en particular.

Normalización

Existe un concepto primordial para crear bases de datos que es el de normalizar la base antes de crearla en la computadora.
Existen varios métodos y pasos a seguir para normalizar, pero no es el objetivo nuestro, solo el que entiendan que un buen planeamiento les ahorrará mucho trabajo en cualquier modificación posterior.
Veremos el concepto de normalización de una base de datos con un ejemplo típico.
Supongamos que una persona encargada del personal de una empresa que tiene unos 50.000 empleados se le ocurre tener todos estos datos en una base de datos.
Lo primero que haría seria crear una tabla “Empleados” con los siguientes Campos:

sql


Imagínense ahora que deciden aumentar los sueldos, entonces el pobre señor deberá cambiar los 50.000 registros!!!
La idea de normalizar una tabla esta ligada con el concepto de relación de tablas, las cuales se hacen por medio de las claves, este concepto se verá mas adelante.
Este señor puede resolver el problema, creando una tabla “Empleados” con un campo mas llamado “código” (categoría) de sueldo, y otra tabla llamada “Sueldos” con un campo clave “codigo_sue” y otro campo “sueldo”.

Access

principiante


Entonces, hacemos una relación desde la tabla “Empleados” con el campo “Codigo_Sue” hacia la tabla “Sueldos” con el campo “Codigo_Sue”, quedando:

Empleados.Codigo_Sue=Sueldos.Codigo_Sue

Al haber normalizado estas tablas, solo deben modificar los sueldos en la tabla “Sueldos” que es un solo registro por cada categoría de sueldo, y se ahorran modificar los 50.000 registros.

Creación de un archivo en Access 2000

Microsoft Access genera un solo archivo con extensión .mdb donde dentro de él coloca todos los objetos que componen una base de datos: Tablas, Consultas, Formularios, Informes, Paginas, Macros y Módulos.
Al hacer click en abrir archivo nos dará la opción de abrir una base de datos en blanco, un asistente para un proyecto, o abrir una base ya creada.
Haremos click en una base de datos en blanco y crearemos una base de ejemplo para mantener una agenda Telefónica, la cual la usaremos a lo largo de este proyecto.
Luego de darle un nombre a nuestro proyecto, es decir al archivo .mdb, llegaremos a la pantalla principal del Access.

base de dato


Objetos de una base de Datos:

Tablas
Son las encargadas de contener los datos que están agrupados, como ya dijimos, en registros (filas) y campos (columnas), estas filas y columnas están compuestas por celdas que pueden contener cualquier tipo de datos, incluso gráficos.

Consultas:
Son los componentes que nos permiten obtener nuestros datos filtrando aquellos que no deseamos.

Formularios:
Son las pantallas que se crean para obtener los datos en forma vistosa ya sea para un ingreso o una muestra por pantalla.

Informes:
Se generan para obtener los datos de forma mas vistosa, pero esencialmente se usan en forma impresa.

Paginas:
Genera paginas Web para poder ser utilizadas desde internet o desde una Intranet.

Macros:
Son pequeños programas que se hacen para obviarnos de repetir una serie de operaciones.

Módulos:
Son para usos mas avanzados, y están ligados con la programación (Visual Basic)

Creación de nuestra Base de Datos de Ejemplo:
Para nuestro ejemplo trabajaremos con algo que nos pueda ser útil, para eso crearemos una pequeña base de datos de nuestros contactos.
Luego de relevar los datos que queremos guardar de nuestros contactos y haber normalizado estas tablas, nos encontramos con tres tablas distintas:
Tabla “Gente”:
La cual tiene los datos mas comunes de nuestros contactos y la misma tiene el campo clave Id que es de forma “autonumérico”, y este nos ira numerando los distintos contactos.
Tenemos dos campos mas que serán campos claves en sus respectivas tablas, y por el medio de los cuales haremos las relaciones a dichas tablas, estos campos son “Compañía” y “Empresa”.
Hacemos click en tablas en la barra de Objetos y a continuación en crear una tabla en Vista de Diseño y crearemos la primera tabla “Gente” con los siguientes campos:

Access para principiantes


Luego la tabla “Empresa” que contiene las empresas en donde trabajan nuestros contactos

sql


Y por último la tabla “Compañía” que hace alusión a las distintas compañías de celulares que existen, solo para poder obtener el prefijo de llamada (155-CLARO, 156-MOVISTAR, etc).

Access


Vemos que la creación de una tabla es muy simple, solo hay que tener en cuenta al definir los atributos del campo, es decir que si es numérico, la cantidad de decimales, etc.
Tipos de Datos:
Texto:
Permite datos alfanuméricos, pero serán tratados como texto.
Memo:
Es alfanumérico pero de gran extensión, generalmente se lo usa para notas.
Numérico:
Permite todo tipo de datos numéricos para luego hacer cálculos.
Fecha/Hora:
Permite datos solo con formato de fecha y/o hora
Moneda:
Permite contener datos que serna tenidos en cuentas como monetarios (precios)
Autonumérico:
Se utiliza para autonumerarse en forma automática, generalmente para numerar los registros.
Si/No:
Permiten solo estos dos resultados para operaciones lógicas.
Objeto OLE:
Permite cualquier tipo de datos de intercambio de Windows (tecnología OLE) como imágenes, video, etc.
Hipervínculo:
Permite datos del tipo de direcciones web.

Atributos del Campo
Tamaño del Campo:
En el caso del texto por omisión el tamaño máximo es de 50 caracteres pero la idea es no darle mas caracteres de lo necesario, de esta manera reducimos el tamaño de la base de datos.
En el caso de los campos numéricos las opciones son:
Byte: Números entre 0 y 255
Entero: Números entre –32.768 y 32.767
Entero Largo: Números entre –2.147.483.648 y 2.147.483.647
Simple: Números entre –3,402823E38 y –1,401298E-45 para los negativos y 1,401298E-45 y 3,402823E38 para los positivos
Doble: Números entre –1,79769313486231E308 y –4,94065645841247E324 para los negativos, y 1,79769313486231E308 y 4,94065645841247E324 para los positivos.
Requerido:
Esta opción indica que el dato no puede ser emitido en la carga del registro, generalmente se usa para valores claves.
Mascara de Entrada:
Se utiliza para darle una “mascara” a los valores a ingresar, como ser los guiones en los nros de Cuit, etc. Se lo hace colocando 9 en los valores numéricos y los símbolos necesarios.
Ej.: 99-99999999-9
Permitir Longitud Cero:
Se utiliza en los campos numéricos en donde no se ingresara un valor y no se debe tomar como un cero, ej: DNI
Lugar Decimales:
Define la cantidad de decimales en los campos numéricos.

Como Cargar Datos dentro de la tabla ya creada.
Una ves creada en tiempo de diseño la tabla, podemos cargar datos haciendo doble click en el nombre de la tabla “gente”, la cual se vera de la siguiente forma:

principiante


Empezamos cargando el dato en la primer celda (Nombre) y luego vamos pasando a la siguiente pulsando la tecla “TAB”. Así hasta terminar el ultimo registro. Luego veremos como generar un formulario de carga para hacer esta tarea mas vistosa.

Consultas de Registros
Consultas Simples (Una tabla)
En nuestro ejemplo haremos una consulta que nos devolverá todos aquellos clientes que posean dirección de correo electrónico (e-mail).
Para empezar a crear nuestra consulta debemos hacer click en “Consultas” dentro de la barra de Objetos, luego doble click en “Crear una consulta en vista de Diseño” y luego seleccionaremos la tabla a utilizar para la consulta, que en nuestro caso será la tabla “Gente”, donde haremos click en donde figura el nombre “Gente”, luego en el botón “Agregar” y por ultimo en “Cerrar” .
Quedara una ventana similar a la siguiente:

base de dato


Ahora debemos ir agregando uno a uno los campos que queremos que nos devuelva la consulta con el criterio de que esta persona posea dirección de correo electrónico.
Podemos ir haciendo doble click en los campos que queremos en la tabla, o podemos ir descolgando en la consulta para ir eligiendo los campos.
En nuestro ejemplo seleccionaremos el “Apellido”, el “Nombre”, el teléfono “Fijo” y el “mail” lo usaremos para la condición pero haremos que no aparezca en los datos del resultado de dicha consulta.
Si en este momento hacemos click en el menú “Ver” veremos que tenemos tres formas distintas de ver la consulta, una es la recién utilizada “Vista de Diseño” otra es “Vista SQL” que veremos mas adelante y la ultima es “Vista hoja de datos” que es el resultado de la consulta en forma de planilla de Excel.

Access para principiantes


Ahora necesitamos agregarle el Criterio de que nos muestre solo aquellos registros (personas) que posean dirección de correo electrónico, es decir que el campo “mail” no este vacío.
En Access versión ingles este criterio seria “WHERE (((Gente.Mail) Is Not Null))”, y en un español mal traducido seria (Access versión español) “Es Negado Nulo” que es lo que tenemos que escribir en la celda criterio del campo “mail”

sql


Los operadores a utilizar pueden ser :

Access


Luego existen otros del tipo: IN, OR, AND, BETWEEN, etc. Que veremos específicamente cuando se de el caso.

Consultas Compuestas (con Relaciones entre tablas)
A diferencia de una consulta simple, una consulta compuesta utiliza mas de una tabla, entre las cuales existe una o mas relaciones.
Para poder entender este tipo de consultas, primero debemos ver el concepto de Relaciones.

Relaciones
Una relación entre dos tablas es un enlace que existe entre un campo de una tabla con un campo de otra tabla. Generalmente la relación es entre un campo de la tabla maestra y un campo clave de otra tabla. En el ejemplo que vimos en “Normalización” la relación seria entre el campo “Codigo-Sue” de la tabla maestra “personal“ con el campo clave “Codigo_Sue” de la tabla “Sueldos”.

principiante


Esta seria la única forma que tiene Access de vincular estas tablas y poder saber que sueldo le corresponde a cada persona.
Microsoft Access lo que hace es “pararse” en un registro en la tabla personal, y automáticamente se esta parando en el registro que corresponde a su sueldo en la tabla “Sueldos” ubicándolo por el código que es campo clave.
Para crear una relación en nuestro proyecto haremos click en el menú “Herramientas” y luego en “Relaciones” .
Agregaremos las tres tablas y luego arrastraremos el campo “Compañía” de la tabla “Compañía” hacia el campo “Compañía” de la tabla “Gente”. Lo mismo debemos hacer con el campo “Empresa” de la tabla “Gente” y de la tabla “Empresa”. Deberían quedarnos las relaciones similares a las siguientes:

base de dato


Ahora si estamos en condiciones de generar una consulta compuesta.
En nuestro ejemplo la consulta será que nos devuelva los nombres, apellidos y dirección de aquellas personas que trabajan en la empresa "B".
Entonces, haciendo click en “Consultas” en la barra de Objetos, luego doble click en “Crear una consulta en vista de Diseño” y luego seleccionando las tablas “Gente” y “Empresa” llegaremos a la vista de Diseño de esta consulta, en la cual seleccionaremos los campos que nos devolverá esta consulta que son: “Nombre”, “Apellido” y “Dirección” de la tabla “Gente”; y “Nombre” de la tabla “Empresa”. Fíjense que este ultimo campo solo es para ser utilizado para el criterio “Nombre=B” y esta marcado para que no sea mostrado.
La consulta debería verse de forma similar a la siguiente:

Access para principiantes


Si hacemos botón derecho y elegimos “Vista Hoja de Datos” veremos el listado de aquellas personas agendadas que trabajan en la empresa "B".

Formularios:
Los formularios son utilizados para la carga de datos o para mostrar los mismos.
Para continuar con nuestro ejemplo, haremos un formulario que lo utilizaremos para revisar, en forma rápida, las personas que trabajan en la empresa “B”.
Para empezar el formulario haremos click en “Formularios” en la barra de Objetos, y luego doble click en “Crear Formulario en Vista de Diseño”.

sql


Lo primero que veremos será el espacio en donde “dibujaremos” nuestro formulario y una ventana flotante con los objetos a incrustar en el formulario. Estos Objetos pueden ser:

AccessEtiqueta, la cual sirve para poner texto en cualquier parte del formulario.
principianteBotón On/Off, sirve para dar condiciones dentro del formulario.
base de datoCuadro descolgable donde podemos elegir entre varias opciones.
Access para principiantesImagen de fondo.
sqlSalto de Página.
AccessLínea.
principianteSe utiliza para armar grupos de opciones, es decir un grupo que contiene botones de opcion y/o casillas de verificación.
base de datoCasillas de Verificación.
Access para principiantesBotón de Acción, el cual nos sirve para darle un comando a este botón.
sqlMarco para contener otro objeto como archivo de sonido, de video, etc (independiente).
AccessSubformulario, Subinforme.
principianteSe accede a una lista con mas opciones.
base de datoCuadro de texto, que sirve para contener un valor dentro del formulario, este valor no es fijo a diferencia de la etiqueta.
Access para principiantesBotón de Opción.
sqlCuadro de lista, no es descolgable como la opción que ya vimos.
AccessMarco para contener otro objeto como archivo de sonido, de video, etc (independiente).
principianteSirve para tener distintas solapas de opciones.
base de datoPara crear cuadros.

Los objetos que nosotros utilizaremos para la muestra de datos serán “Etiquetas” y “Cuadro de textos” que contendrán los datos.
Lo primero que debemos hacer es decirle al formulario de donde sacaremos los datos, esto lo podemos hacer que los obtenga de una/s tablas, consultas, o ambas.
Para indicarle al formulario de donde obtendrá los datos, hacemos botón derecho en el ángulo superior izquierdo del formulario, y luego elegimos “Propiedades”.

Access para principiantes


En la siguiente ventana, en la solapa “Datos” en el extremo derecho hacemos click en el renglón “Origen del Registro” y luego hacemos click en el botón con tres puntitos.

sql


Ahora si seleccionamos de donde sacara los datos para mostrar este formulario. En nuestro ejemplo seleccionaremos la Consulta “Personas que trabajan en B” que fue creada anteriormente.
Ahora debemos “dibujar” los campos a ser mostrados y una etiqueta que nos indicara de que se trata el dato.
El formulario nos debería quedar algo así:

Access


Solo nos queda darle a cada cuadro de texto el “source”, es decir el origen del dato. Para hacer esto, debemos ir haciendo click con el botón derecho y propiedades en cada cuadro de texto, y en la solapa “Datos” en el renglón “Origen del Control” podremos descolgar y elegir el campo que estará en este cuadro de texto.
Luego podremos verlo ya listo, eligiendo “Vista de Formulario” en el Menú “Ver”.
De la misma forma podemos usar un Formulario que nos muestre a todas las personas que tenemos cargadas, con todos sus datos:

principiante


U otro formulario más avanzado para la carga de Datos:

base de dato


NOTA:
Antes que alguien se queje, este pequeño manual fue creado hace tiempo atrás con una version de M. Access 2000, solo la subí como post para un amigo que me la pidió, y porque seguramente le sera de utilidad a mas de uno que comienza con esta herramienta o cualquier otra herramienta de Base de Datos. NO PIDAN QUE LA ACTUALICE A UNA VERSION MAS NUEVA DE ACCESS, NO LO PIENSO HACER.