Академический Документы
Профессиональный Документы
Культура Документы
Manual Access1
Microsoft Access es un gestor de base de datos, es decir, un software que permite su utilizacin de
una manera estandarizada para Modelos de Entidad Relacin que puedan ser personalizados a
travs de tablas. La ventaja principal radica en que es sencillo de utilizar y hace nfasis tanto a los
datos que compone una tabla como al modelo mismo que se posee.
Sin embargo, como apreciaremos, no es la maravilla instantnea, puesto que debe validarse un
modelo a ingresar tal que Access lo entienda as como tambin tener la comprensin de los
modelos para obtener informacin til y relevante. Con ello sera el primer paso para realizar las
funciones que podemos lograr con las herramientas de Base de Datos.
Este manual fue compilado por Ivn Abarca (iabarca@fen.uchile.cl) en colaboracin con el material
preparado y compartido por Fabin Vicencio, Jonathan Vsquez, Sindy Madrid.
Dadas las 2 entidades (profesor y asignatura) y el nombre de las relaciones, es posible crear en
Access ambas tablas y luego relacionarlas. Al crear la BD, automticamente aparece la vista de
datos que nos permite llenar una tabla:
Nos pedir editar la tabla que llamaremos EMPLOYER, luego se dar el siguiente modelo de datos:
Esta imagen previa es sumamente importante ya que reconoce al menos los siguientes casos:
-
La llave principal (PK, de Primary Key,en adelante) que es el atributo que rene toda la
informacin de la entidad; es nico para cada entidad y adems debe tener un dato
reconocible siempre (cada empleado tiene su identificacin en este caso)
Los tipos de datos que son electos entre Texto, Nmero, Fecha/Hora, Moneda, Si/No, Link
entre otros. Ellos permiten a Access definir qu dato entrar en cada atributo para que
tambin no se salga de sus mrgenes. Ellos estn definidos y un dato siempre debe tener
un tipo de dato (el predefinido es texto).
La descripcin de datos que es voluntaria y sirve para especificar atributos que no son
claros por s solos.
Las Propiedades del campo que son dados a partir de lo siguiente que vemos debajo de la
vista diseo es prudente sealar:
a) Tamao del Campo: que es la cantidad de caracteres que pueden caber en el atributo
para cada entidad.
3
b) Mscara de entrada: que son tiles pues proporcionan un formato establecido para la
entrada de datos en un campo mediante el uso de caracteres y smbolos. Al aplicar una
mscara de entrada a un campo, las personas que escriban datos en ese campo debern
seguir el patrn especfico definido por la mscara de entrada. Por ejemplo, si el usuario
de la base de datos escribe un nmero de telfono sin el cdigo de rea, en esta mscara
en particular, (___) 555-0187 ext. ___, el usuario no podr guardar los datos hasta que
agregue el cdigo de rea. El comportamiento exacto depende de cmo el diseador de la
base de datos haya configurado la mscara de entrada. A continuacin vemos las
mscaras de entrada definidas.
Con esto ya tenemos creada nuestra tabla. Esta la debemos comenzar a llenarla en vista de hojas
de datos:
Anlogamente, se hace llenado de la otra tabla con los siguientes datos de vista diseo:
Con ello ya se tienen 2 tablas, con ello podemos hacer una relacin a partir de los atributos que se
repiten: Employer ID en ambas tablas que en uno es clave primaria y en otro es clave fornea.
Luego, Access no identifica en la vista diseo cul es fornea, pero s en las relaciones se pueden
ver.
Ello nos pedir mostrar una tabla y hacemos doble click en ambas. Luego las veremos integradas
en la vista de relaciones pero no estarn relacionadas an:
Para ello, debe haber una tabla intermedia TRABAJA_EN (Rut, Id_Proyecto, AtributoX, AtributoY)
tal que se realice la primera forma normal y esa relacin muchos es a muchos se transformar en
2 relaciones de uno a muchos:
Otra ventaja inherente de normalizar (aparte de para
pasarse a Access) es que el modelo puede incluir atributos
que son propios del trabajo del empleado y no del
empleado como por ejemplo: horas de trabajos, metas
negociables, cargo en el proyecto, entre otros.
Luego, notemos que el atributo de Departamento
Responsable est destacado debido a que demuestra
que el modelo no est en tercera forma normal (pues el
departamento no es inherente del proyecto); por tanto es
demostrable que slo es necesaria la primera forma
normal es necesaria para realizar modelos relacionales en
Access.
Consultas en Access
Una consulta (query) es una recoleccin de informacin que tiene condiciones establecidas por el
usuario. Es bastante importante pues es un output bastante relevante en las bases de datos y ac
nos da la informacin til para la toma de decisiones.
Antes de ello es muy relevante saber qu es la informacin que tenemos, pues esta es la que es la
base de las consultas, para ello verifique las entidades, relaciones y atributos de las tablas en
cuestin.
Consideremos el siguiente modelo presentado en el archivo FineFoodSQL:
Con ello es posible entender el negocio en cuestin y la cantidad de informacin disponible. Dada
la naturaleza de la base de datos, hay informacin que nunca obtendr: es por ello que antes de
las consultas es necesario validar la eficiencia del modelo de datos.
Las relaciones previamente deben tener las tablas justas y el modo correcto. Luego se verificara
en diseo de relaciones esa informacin.
2. Verifique las relaciones de acuerdo a lo que usted espera. Ahora tenemos esto:
4. Al realizar click ah nos pedir en qu tablas est la informacin y condiciones que busco:
Donde se tendr que seleccionar haciendo doble click o haciendo click en agregar.
5. Haremos una consulta simple: cules son las rdenes mayores a $1.500. Entonces
elegimos Order y veremos que aparecer la tabla
Esto es similar a haber puesto Order.* (el * seala que se vern todos los atributos), sin
embargo no podemos hacer restricciones sobre l.
7. Sealamos ahora donde estar la limitante de lo que queremos consultar, pues si ahora
hacemos ejecucin de la consulta veremos algo equivalente a la tabla. Entonces debemos
sealar que el monto de la factura (InvoiceAmt) sea mayor a 1.500; esto lo hacemos en
Criterios:
10
Note que hay dos atributos iguales: esto se debe a que con Order.* los seleccion todos y con
InvoceAmt tambin incluye el monto de la factura, pero como ya est contenido, Access cambia
automticamente el monto. Por ello debemos modificar la consulta.
9. Volvemos viendo nuevamente la vista diseo:
10. Necesariamente ver lo mismo que tena antes, sin embargo ahora haremos una
distincin y no mostraremos el segundo monto de factura a pesar de que ac est la
restriccin. Esto se realiza desactivando el check box del respectivo atributo.
11
11. Ejecutamos nuevamente y deberamos tener 29 registros. Notemos que ahora no est el
atributo rplica y simplemente tenemos toda la tabla un poco ms reducida. Adems
todos los montos de las facturas son menores a $1.500.
12. Para profundizar ms iremos a la Vista SQL, donde mismo se ve la vista diseo y de tabla.
En ella ver solamente escrito un cdigo. Revselo y entienda porqu viene as:
12
13. Ahora que tenemos definida la consulta, la debemos guardar (botn izquierdo donde est
la consulta y se hace click en guardar). Ver esto y guardaremos como ordenes mayores a
$1.500.
14. Junto a las dems tablas usted podr ver que aparece su consulta junto a ellas: si hace
doble click en ella ver que tambin es una tabla. Una consulta es una tabla.
De no ser posible verlo, tendr que hacer click al costado de Todos los objetos de Access
y hacer click en Consultas. En este caso se estar mostrando todo (ltima opcin):
13
Diseo de consulta
Seleccionamos tabla clientes y rdenes
Deberamos ver esto:
14
Podemos tambin ver su cdigo SQL y notaremos que en la parte de FROM se realiza la
unin de las tablas a travs del comando INNER JOIN:
15
Notemos que ahora en la condicin de fechas irn entre gato. Las condiciones al ser simultneas
se realizan con el dato Y. El resto se realiza con la misma forma. Si hubiramos puesto el
comando de O estamos en presencia de decir que son antes del 15 de marzo o despus del 01 de
enero. Cualquier fecha cumple con esa condicin.
Al analizar SQL vemos que ahora tenemos 3 condiciones que en la parte de WHERE son separadas
siempre con AND:
16
Esto es equivalente en resultante a ordenar los datos de acuerdo a los tipos de la factura o hacer
algn filtro respectivo. Sin embargo esto no es parte de la consulta, sino que es tratamiento de la
tabla:
As tambin es posible ordenar por cualquier tipo de dato: fechas, montos, alfabticamente o por
valores lgicos (Si = 1, No = 0).
17
El nombre no es muy elegante o til, para ello es posible renombrar el atributo en la siguiente
seccin.
Ahora si queremos todos los tipos de empleados saber cuntos hay simplemente debemos borrar
el criterio. Como es una cuenta estaramos contndolos todos. Necesariamente esta cuenta debe
ser igual al total de empleados que hay.
18
Con ello tambin es posible identificar cunto gana cada empleado en todos los proyectos que
participa, para ello ahora necesitamos ambas tablas:
19
Luego al sealar la suma de los salarios, estamos viendo cunto gana cada uno. Notar que estamos
agrupando por Nombre y por ID que son lo mismo. Al ver el resultante podemos notar que
aparece la suma de los salarios
Ahora si quisiramos para empleados especficos, bastara con sealarlo en los criterios. En este
caso utilizaramos el conector O.
20
Renombrar atributos
Es bastante simple y sirve bastante para determinar lo que queremos mostrar tal que sea til y
almacene informacin entendible. Para ello utilizaremos el comando AS en SQL o sealar el
nombre requerido antes de la sealizacin del atributo:
En el ejemplo del total de Managers, es posible notar que renombremos el atributo como Total
Managers, entonces:
Esto fue sealado a propsito entre comillas para explicar, pero no necesariamente pueden ir as.
Para ello establecemos las relaciones y en Criterios sealaremos lo que estar incluido en un
Message Box pidiendo el tipo de dato, ello estar entre parntesis cuadrados:
Donde podemos ingresar distintos tipos de datos, los cuales pueden ser correctos o incorrectos:
Si escribimos Manager veremos:
22
Lo cual es vaco. Finalmente estamos en presencia de que para ver la correcta informacin se debe
ingresar un dato validado y que sea igual al contenido del valor (en este caso manager, Manager o
MANAGER son lo mismo).
Ahora si queremos ver dos cargos podemos agregar en criterios otro cargo, en consecuencia
veremos 2 cuadros de mensaje.
Consultas no coincidentes
Las consultas que acostumbramos a hacer son relacionadas cuando los datos de una tabla
necesariamente existen en la otra; sin embargo esto no siempre ocurre. Como por ejemplo
podemos citar:
Todas ellas son consultas no coincidentes que veremos a continuacin con el ejemplo de
productos que existen pero no son vendidos (no estn en las ventas). Suponga que se tiene un
modelo que contiene la entidad Producto y Producto en Venta.
23
Veramos esta interfaz que nos traduce en 3 opciones como queremos la relacin. La opcin 1 es
por default y es tenida en todo tipo de relacin cuando no hay condiciones.
En este caso, al marcar la opcin 2 se incluyen TODOS los productos independientemente si estn
en ventas. Ya que no todos los productos deben estar vendidos
Luego para escoger los no vendidos debera haber informacin Nula en la venta, pues la venta
no existe.
24
Y veramos slo los que tienen ventas nulas, es decir los que no se han vendido
Sabremos que una relacin es no coincidente cuando se seala la relacin con una flecha pero
manteniendo las cardinalidades (al contrario de una lnea comn que es la de las relaciones
comunes). La flecha tiene direccin hacia donde se buscarn todos los datos de la tabla de origen
(en este caso los productos son buscados en la tabla de productos en venta). De esta forma
estamos incluyndolos todos. Si la flecha fuera al revs iran solo las ventas, lo cual sera igual a
una relacin normal pues todas las ventas tienen un producto.
25
Para ello ordenamos los datos en Orden mientras que sealamos los datos del 5% menor (esto se
da solo ya que estn ordenados as).
Ahora bien, en la vista SQL estamos notando que queremos los mejores 5% en la parte de
seleccionar. Pues al fin y al cabo estamos viendo la seleccin de datos que buscamos.
26
Formularios
Un formulario es un objeto de base de datos que se puede usar para escribir, modificar o mostrar
los datos de una tabla o consulta. Los formularios se pueden usar para controlar el acceso a los
datos, como qu campos o filas de datos se van a mostrar. Por ejemplo, puede que algunos
usuarios necesiten ver slo algunos de los campos de una tabla que contiene numerosos campos.
Si se proporciona a esos usuarios un formulario con slo esos campos, les ser ms fcil usar la
base de datos. Asimismo, se pueden agregar botones y otras funciones a un formulario con el fin
de automatizar las acciones frecuentes.
Para ello debemos ir a crear formulario
Creando Formularios
Al trabajar en la base ya conocida, tenemos que existe el empleado y su cargo. Seleccionaremos la
tabla empleado y crear formulario, lo cual mostrar dos vistas: una interfaz amigable que es el
formulario y otra que es la presentacin de los datos.
Esto nos sirve para tener una manera ms atractiva del llenado, modificado y edicin de datos.
Las dos vistas estn conectadas al mismo origen de datos y estn en todo momento sincronizadas
entre ellas. Si se selecciona un campo en una parte del formulario, se selecciona el mismo campo
en la otra parte del formulario. Se pueden agregar, editar o eliminar datos de ambas partes
(siempre y cuando el origen de registros sea actualizable y el formulario no est configurado para
27
evitar estas acciones). As como tambin es posible tener una identificacin mejor de datos a
travs de una bsqueda:
Al tener una relacin uno a muchos de empleados a cargos. Un empleado tambin puede mostrar
los cargos respectivos de cada empleado. Esto se conoce como formulario dividido:
Nos pedir los datos que queremos incluir, tipos de formato y nombre. Aquello obtiene el mismo
resultado y el formulario es guardado automticamente. Por otra parte, es posible utilizar el
asistente cuando el formulario ya est creado.
28
Las los controles del diseo (Vista diseo) son variadas y permiten agregar ms informacin o
cambiar relieves, colores o su presentacin como un documento en papel (por ese motivo
tambin se aprecian mrgenes).
Al costado adems podemos ver Autoformatos que permiten modificaciones ms atractivas de la
interfaz en cuestin:
29
Mientras que las herramientas nos permiten agregar ms tipos de datos en Agregar campos
existentes, y tambin verificar las propiedades de cada objeto en cuestin en la Hoja de
propiedades. Recordemos que un formulario es la aplicacin de visual basic en conexin con la
base de datos, por lo cual cada componente tiene una conexin establecida a propiedadades.
Al sealar las propiedades de algo que hemos seleccionado, podemos ver ms de 200 opciones
para definir, como por ejemplo podemos bloquear ese componente para que no pueda ser
editado (Bloqueado: S)
30
Esto puede ser editado para que sea entendido por el usuario sin perder consistencia.
31
Por lo mismo, siempre es sugerido el bloqueo de datos para formularios a travs de las
propiedades de los objetos de ste.
Subformularios
Un subformulario es un formulario que se inserta en otro. El formulario primario se
denomina formulario principal, y el formulario dentro del formulario se denomina subformulario.
Una combinacin formulario/subformulario se denomina a menudo formulario jerrquico,
formulario principal/detalle o formulario principal/secundario.
Entonces necesariamente utiliza dos tablas (que pueden ser dos consultas tambin).
Abrimos el asistente de consultas y seleccionamos atributos de ambas tablas: empleado y posicin
estn en cuestin:
32
Luego es posible ver como conectar los datos, al hacerlo por la tabla principal (es decir dnde sale
el origen de uno a muchos) veremos que habrn los datos propios del empleado mientras que los
cargos son secundarios pero incluidos en un formulario extra.
Luego escogemos la forma de tabular los datos y un formato cualquiera. Finalmente continuamos
hasta finalizar.
33
Finalmente vemos ambas tablas para analizar en la interna los datos de los cargos que queremos
siempre y cuando sean de los empleados seleccionados en la tabla principal. Ello muestra slo los
atributos que decidimos que entren.
Esta tabla interna es creada como SubFormulario el cual es guardado en los formularios pero es
equivalente a una consulta en su presentacin.
34
Informes
Ya sabemos cmo hacer tablas, consultas, formularios. Ahora aprenderemos cmo hacer el output
ms relevante que es el informe. Los informes constan de informacin extrada de una tabla o
consulta. La tabla o consulta que proporciona los datos subyacentes tambin se conoce como
origen de registros del informe. Si los campos que desea incluir se encuentran todos en una sola
tabla, utilice dicha tabla como origen de registros. Si los campos se encuentran en ms de una
tabla, le ser ms conveniente utilizar una o ms consultas como origen de registros. Puede que
dichas consultas ya existan en la base de datos, o bien, puede ser necesario crear consultas
especficas que cubran las necesidades del informe.
Por ello, utilizaremos la tabla empleados para realizar un informe que los incluya a todos.
Previamente debemos ver que existen 4 vistas: similar a un formulario, pero incorpora la vista
preliminar.
Ahora bien, es posible eliminar datos a presentar, pero cuando se elimina del informe no se ver
para ningn registro. De esta forma se ver el informe como un listado simple de los empleados en
este caso. Por otra parte es posible modificar el nombre de los atributos a mostrar que no
necesariamente son iguales a los de la tabla de la Base de Datos.
35
Vemos que los celestes son editados por el usuario como el ttulo o los encabezados. El informe
tambin tiene un pie de pgina y un pie de informe que son creados a partir de consultas de
Access algo simples, generalmente de agregacin.
De esta forma nosotros al final del informe estamos sealando que el total de empleados es
equivalente a la cuenta de los empleados. El pi de pgina dir cuntos informes caben a partir del
tipo de papel definido en la vista preliminar. En ella, al igual que en Microsoft Word, es posible
sealar cmo queremos que se vea impreso.
36