Você está na página 1de 291

INDICE

Introducción…………………………………………………………………………6

1. Métodos del ciclo de vida para el desarrollo de sistemas ………………….….8


Inicio del proyecto ………………………………………………………………10
Investigación preliminar ………………………………………………………..13
Determinación de los requisitos del sistema ……………………………16
Diseño del sistema ………………………………………………...………….18
Desarrollo del software ………………………………………………………20
Prueba de sistemas ……………………………………………………………21
Implantación y evaluación ………………………………………………….22

2. BASE DE DATOS ………………………………………………………………..23


Sistema de Gestión de Bases de Datos…………………………………….. 26
Abstracción de la Información ……………………………………………. 28
Nivel Físico ……………………………………………………………….. 29
Nivel de Visión …………………………………………………………… 30
Nivel Conceptual ………………………………………………………… 31

1
Modelos de Datos ………………………………………………………………………………………………. 33
Modelo entidad- relación (E-R) ……………………………………………………………………….. 34
Entidad ……………………………………………………………………………………………………………….. 36
Atributos …………………………………………………………………………………………………………….. 37
Clasificación de Atributos ……………………………………………………… 40
Atributos Clave …………………………………………………………………. 44
Relaciones ………………………………………………………………………. 47
Ligaduras de correspondencia ………………………………………………... 53

3. COMANDOS SQL…………………………………………………………………..59
Crear una Tabla …………………………………………………………………. 61
Insertar Datos …………………………………………………………………… 62
Seleccionar ……………………………………………………………………… 63
Removiendo Datos ……………………………………………………………… 65
Modificando Datos ………………………………………………………………. 66
Ordenando Datos ………………………………………………………………... 67
Destruyendo Tablas ……………………………………………………………... 68
Uso de AND/OR …………………………………………………………………. 71
Between y Like …………………………………………………………………... 73
Ejemplos ………………………………………………………………………….. 76
GROUP BY ………………………………………………………………………. 77
HAVING …………………………………………………………………………... 78
2
4. MICROSOFT ACESS …………………………………………………………………………………………… 79
Crear una base de datos nueva ………………………………………………80
Tablas ……………………………………………………………………………86
Creación desde el menú …………………………………………………87
Creación desde la barra de herramientas ……………………………...90
Creación desde la ventana de la base de datos ………………………91
El asistente de creación de tablas ………………………………………93
Introduciendo datos …........................................................................96
Vista Diseño ………………………………………………………….…..100
Tipos de Datos …………………………………………………………...109
Introducir datos en la tabla ……………………………………………..111
Ejercicio 1 Hospital ……………………………………………………..112
Ejercicio2 Empresa …………………………………………………….116
Ejercicio 3 Música ……………………………………………………….120
Insertar imágenes ……………………………………………………….123
Insertar sonido …………………………………………………………..131
Insertar un campo ……………………………………………………….142
Mover un campo ………………………………………………………...143
Editar registros …………………………………………………………..144
Modificar el aspecto de la tabla ………………………………………..148
3
Clave principal………………………………………………………..…. 155
Tipos clave principal …………………………………………………….158
Ejercicio 1 Empresa ……………………………………………………..160
Ejercicio 2 y 3 ……………………………………………………………163
Relaciones ….....................................................................................165
Ejemplo …………………………………………………………………...187
Tamaño del campo ………………………………………………………205
Formato del campo ……………………………………………………...207
Formularios ……………………………………………………………………212
Crear un formulario ………………………………………………….…..213
Vista Diseño ……………………………………………………………...217
Vista Formulario …………………………………………………………222
Vista Hoja de Datos ……………………………………………………..223
Controles …………………………………………………………………225
Asistente para formularios ……………………………………………..233
Formulario con subformulario ……………………………………….…243
Ejercicios …………………………………………………………………252
Asistente para tablas dinámicas ……………………………………....268
Formularios con gráficos ……………………………………………….272
Formularios con botones ……………………………………………….277
Bibliografía ………………………………………………………………………….292
4
INTRODUCCIÓN
Las presente secuencia de diapositivas esta elaborada para la materia
M3S2 “Diseñar sistemas de información” de la carrera de informática de 4to
semestre.

El propósito de su elaboración es con la finalidad de apoyar a los estudiantes


a adquirir los conocimientos, habilidades y destrezas que se buscan durante
el desarrollo de la materia. Así mismo que sirva de consulta para todos los
alumnos del colegio que no estudien la carrera, pero que requieran
información relacionada.

Referente a la competencia 1 “Aplicar el análisis de sistemas de acuerdo a las


necesidades y requerimientos de los usuarios” y la competencia 2
“Determinar los elementos de un sistema de base de datos". La presente
secuencia de diapositivas contiene información básica de los sistemas de
información, análisis de sistemas computacionales, diseño de sistemas
computacionales y el método del ciclo de vida para el desarrollo de sistemas
de información (requerimientos del sistema, desarrollo y documentación del
software, pruebas al sistema, implementación y evaluación).

5
Referente a la competencia 3 “Diseñar una base de datos en base al modelo
entidad/Relación” las presentes diapositivas contienen información del modelo
entidad/relación, cardinalidad de mapeo, campo clave y diagrama entidad/
relación, estructura de bases de datos relacionales, lenguaje de consulta SQL,
restricciones semánticas, teoría de la normalización (formas normales y
dependencias funcionales) y seguridad en la base de datos.

Sobre la competencia 4. “Desarrollar bases de datos mediante un programa


administrador”, los presentes apuntes contienen información del manejador de
bases de datos Access, elementos de tablas, creación de tablas, tipos de datos,
mascara de los campos, formularios, consultas, informes y protección.

6
1. Métodos del ciclo de vida
para el desarrollo de
sistemas

7
Métodos del ciclo de vida para el desarrollo de sistemas

Es el conjunto de actividades que los analistas,


diseñadores y usuarios realizan para desarrollar e
implantar un sistema de información, también
llamado modelo en cascada

1. Investigación preliminar
2. Determinación de los requerimientos del sistema.
3. Diseño del sistema
4. Desarrollo del software
5. Prueba de los sistemas
6. Implantación y evaluación

8
Inicio del proyecto

9
Los proyectos pueden ser socializados por
diferentes problemas. El administrador, un
empleado o por los mismos analistas del
sistema.

Para que un analista del sistema pueda cumplir su


tarea de examinar la situación de la empresa
con el propósito de mejorarla con métodos y
procedimientos mas adecuados es necesario

10
Identificación de:
Problemas
 Requiere de la observación honesta de analistas s/el
negocio.
 Analista y personal hacen resaltar los problemas.
Oportunidades:
 Situaciones que el analista cree que pueden ser mejores.
 Permite que el negocio gane un avance competitivo que
ponga un avance de la industria.
Objetivo:
 Componente importante de la primera fase.
 El analista será capaz de identificar si una aplicación del
sistema de información pude ayudar al sistema, negocio, a
que alcance sus objetivos atacando problemas específicos
y oportunidades.
11
Investigación preliminar
Esta actividad tiene tres partes: Aclaración de la
solicitud, Estudio de factibilidad, y Aprobación de
la solicitud.

 Aclaración de la solicitud.- Antes de seguir


adelante, la solicitud del proyecto debe debe
examinarse para determinar con precisión lo que
el solicitante desea; Es decir que este claramente
planteada. (Administrador, Empleado, o
especialista en sistemas).

12
Estudio de Factibilidad.- Es importante determinar que el sistema
solicitado es factible.

 Factibilidad Técnica: ¿Puede el software implementarse empleando


la tecnología actual y Disponible? Si se necesita nueva tecnología,
¿Cuál es la posibilidad de desarrollarla?

 Factibilidad Economía: Al crear el sistema ¿Superan los beneficios


los costos? ¿Los costos asociados con la decisión de no crear el
sistema son tan grandes que se debe aceptar el proyecto?

 Factibilidad Operativa: Si se desarrolla e implanta ¿Será utilizado el


sistema? ¿Existirá cierta resistencia al cambio por parte de los
usuarios que de cómo resultado una disminución de los posibles
beneficios de la aplicación?

13
Aprobación de la solicitud.- No todos los proyectos
solicitados son deseables o factibles; La selección de un
proyecto es una decisión difícil, ya que normalmente hay
mas proyectos solicitados de los que pueden ser hechos.

 a) Que el proyecto solicitado esté respaldado por la


administración,
 b) Que tenga el tiempo adecuado para la asignación de
recursos,
 c) Que mueva al negocio hacia la obtención de sus
objetivos,
 d) Que sea practicable, y,
 e) Que sea lo suficientemente importante para ser
considerado en vez de otros proyectos posibles.
14
Determinación de los requisitos del
sistema.

Un aspecto fundamental del análisis de


sistemas es comprender todas las facetas
importantes de la empresa. Trabajando con
los empleados y administradores apoyado de
diferentes herramientas como son
entrevistas, cuestionarios, observación en
condiciones reales, estudio de los manuales
y reportes con el fin de comprender las
funciones de negocio.

15
En esta dar respuestas a las siguientes preguntas.

 Que es lo que se hace?


 Como se hace?
 Con que frecuencia se presenta?
 Que tan grande es el volumen de transacciones o de
decisiones?
 Cual es el grado de eficiencia con el que se efectúan las
tareas?
 Existe algún problema?
 Si existe un problema ¿Qué tan serio es?
 Si existe un problema ¿Cuál es la causa que lo origina?

16
Diseño del sistema

El diseño de un sistema de información produce


los detalles que establecen la forma en la que el
sistema cumplirá con los requerimientos
identificados durante la fase de análisis del
sistema. Se conoce como diseño lógico en
contraste con la de desarrollo del software que
se le conoce como diseño físico.

17
 Usa la información recolectada anteriormente para
hacer el diseño lógico de S1 (pseudo código, DF, etc.).
 Diseña procedimientos precisos para la captura de
datos (diseño de entradas).
 Proporciona entrada efectiva para el sistema de
información mediante el uso de técnicas para el
diseño de formas y pantallas
 Diseña la interfaz del usuario (teclado, menú de
pantalla y ratón)
 Diseño de salidas
 Diseño de base de datos
 Diseño de archivo
 Diseño de control y respaldo, etc.

18
Desarrollo del software

Las especificaciones diseñadas en el paso


anterior se pasan a un código. Se programan en
el lenguaje apropiado, en forma estructurada y
siguiendo buenos criterios de programación.
Evitando programación redundante y
respetando el de ocultamiento de información.
También son responsables de los manuales de
usuario, de sistema y de programación.

19
Prueba de sistemas

El sistema se emplea de manera


experimental para asegurarse que el
software no tenga fallas y funcione de
acuerdo a las especificaciones; Se
generan casos de prueba de acuerdo a
diversas técnicas para probar el sistema y
a los subsistemas. Se prueba cada fase
del desarrollo del proyecto, se encuentran
fallas y errores y se depuran o corrigen.

20
Implantación y evaluación

Es el proceso de verificar e instalar nuevo equipo


entrenar a los usuarios, instalar la aplicación y
construir todos los archivos de datos necesarios
para utilizarla.

Se puede comenzar la operación del sistema


solo en un área de la empresa (Prueba piloto), por
ejemplo en un departamento con una o dos
persona. A veces se deja que los dos sistemas
trabajen en forma paralela con la finalidad de
comparar los resultados.

21
2. BASE DE DATOS

22
Conceptos Básicos

• Dato:
Conjunto de caracteres con algún significado, pueden ser
numéricos, alfabéticos, o alfanuméricos.
• Información:
Es un conjunto ordenado de datos los cuales son manejados según la
necesidad del usuario, para que un conjunto de datos pueda ser
procesado eficientemente y pueda dar lugar a información, primero
se debe guardar lógicamente en archivos.

23
Base de Datos
• Es un conjunto de datos relacionados entre sí,
almacenados en conjunto sin redundancias
innecesarias e independientes de los programas que
los usan.
• Son persistentes en el tiempo. Usan un lenguaje para
incluir, modificar o extraer los datos.

• Una BD debe cumplir con las características de:


-Unicidad -Consistencia
-Seguridad -Privacidad
-Disponibilidad -Integridad

24
Sistema de Gestión de Bases de
Datos
• Conjunto de programas que permite definir, construir y
manipular bases de datos para diversas aplicaciones.
– Definir una BD es especificar...
• estructura de datos,
• tipos de datos y
• restricciones de los datos
– Construir una BD es...
• almacenar datos en algún medio de almacenamiento
controlado por el SGBD
– Manipular la BD es...
• consultar datos
• introducir/modificar/eliminar datos, para reflejar
cambios.
• generar informes a partir de los datos almacenados
25
SGBD
• DataBase Management System
SGBD = DBMS

26
Abstracción de la Información
• Una base de datos es en esencia una colección de archivos
relacionados entre sí, de la cual los usuarios pueden extraer
información sin considerar las fronteras de los archivos.

• Un objetivo importante de un sistema de base de datos es


proporcionar a los usuarios una visión abstracta de los datos, es
decir, el sistema esconde ciertos detalles de cómo se almacenan
y mantienen los datos. Sin embargo para que el sistema sea
manejable, los datos se deben extraer eficientemente.
• Existen diferentes niveles de abstracción para simplificar la
interacción de los usuarios con el sistema; Interno, conceptual y
externo, específicamente el de almacenamiento físico, el del
usuario y el del programador.
• Nivel físico.

27
Nivel Físico

• Es la representación del nivel más bajo de


abstracción, en éste se describe en detalle la
forma en como de almacenan los datos en los
dispositivos de almacenamiento (por ejemplo,
mediante señaladores o índices para el
acceso aleatorio a los datos).

28
Nivel de Visión

• Nivel más alto de abstracción, es lo que el


usuario final puede visualizar del sistema
terminado, describe sólo una parte de la base
de datos al usuario acreditado para verla. El
sistema puede proporcionar muchas visiones
para la misma base de datos.

29
Nivel Conceptual
• El siguiente nivel más alto de abstracción,
describe que datos son almacenados realmente
en la base de datos y las relaciones que existen
entre los mismos, describe la base de datos
completa en términos de su estructura de
diseño. El nivel conceptual de abstracción lo
usan los administradores de bases de datos,
quienes deben decidir qué información se va a
guardar en la base de datos.

30
Consta de las siguientes definiciones:

• Definición de los datos: Se describen el tipo de datos


y la longitud de campo todos los elementos
direccionables en la base. Los elementos por definir
incluyen artículos elementales (atributos), totales de
datos y registros conceptuales (entidades).

• Relaciones entre datos: Se definen las relaciones


entre datos para enlazar tipos de registros
relacionados para el procesamiento de archivos
múltiples.

31
Modelos de Datos
• ¿Qué es un modelo de datos?
• Es una colección de herramientas conceptuales para describir
los datos, las relaciones que existen entre ellos, semántica
asociada a los datos y restricciones de consistencia.

• 􀁻 Características
• 􀁻 Gráfico
• 􀁻 Facilitar descomposición descendente
• 􀁻 Redundancia
• 􀁻 Transparente: modelizar datos sin tener en cuenta
• los procesos
• 􀁻 Ejemplos: modelo Entidad-Relación, modelo relacional

32
Modelo entidad- relación (E-R)

Este modelo representa a la realidad a través de


entidades, que son objetos que existen y que se
distinguen de otros por sus características.

Las características de las entidades en base de


datos se llaman atributos.

Una entidad se puede asociar o relacionar con


más entidades a través
de relaciones (Cardinalidad)
33
34
Entidad

• Cosa u objeto del mundo real con existencia propia y


distinguible del resto

• Objeto con existencia...


– Física o real (una persona, un libro, un empleado)
– Abstracta o conceptual (una asignatura, un viaje)

“Persona, lugar, cosa, concepto o suceso, real o


abstracto, de interés para la empresa” (ANSI, 1977)
35
35
Atributos
• Definición
Los atributos describen propiedades que
posee cada miembro de un conjunto de
entidades.
Se clasifican en:

Simples y compuestos
Univalorados y multivalorados
Nulos
Derivado
36
Atributo
• Propiedad o característica de una entidad
• Una entidad particular es descrita por los valores de sus
atributos:
titulo = El alquimista impaciente
genero = Thriller
p1
nacionalidad = España
año estreno = 2002
...
dni = 87654321
e1 nss = 1122334455
nombre = Cristina Aliaga Gil
nacionalidad = España
...
37
Instancia de una Entidad
PELICULA
titulo = El señor de los anillos
genero = Fantasía
p2
nacionalidad = EEUU
año estreno = 2001
...
titulo = Amores perros titulo = Amelie
genero = Drama genero = Comedia
p3 p4
nacionalidad = Méjico nacionalidad = Francia
año estreno = 1999 año estreno = 2001

38

38
Clasificación de Atributos

• Atributos compuestos
– Pueden dividirse en otros con significado
fechanacim
propio dirección
día mes año calleciudadprovincia codpostal

– Valor compuesto = concatenación de valores


de componentes

• Atributos simples
– No divisibles. Atómicos
genero
39
Clasificación de Atributos
• Atributos monovalorados (monovaluados)
– sólo un valor para cada entidad
– fechanacim [de un EMPLEADO particular]
– año estreno [de una PELICULA concreta]

• Atributos multivalorados (multivaluados)


– más de un valor para la misma entidad
– nacionalidad [ PELICULA coproducida por varios países ]
– teléfono [ EMPLEADO con varios teléfonos de contacto]
– Pueden tener límites superior e inferior
del nº de valores por entidad
– nacionalidad (1-2)
– teléfono (0-3) 40
Clasificación de Atributos

• El nulo (null value) es usado cuando...

– Se desconoce el valor de un atributo para cierta entidad


• El valor existe pero falta
» altura [de un EMPLEADO]
• No se sabe si el valor existe o no
» numteléfono [de un EMPLEADO]

– La entidad no tiene ningún valor aplicable para el atributo:


• fecha alquiler [PELICULA sólo en vídeo-venta (no
alquiler)]
41
Clasificación de Atributos

• Atributos derivados
– Valor calculado a partir de otra información ya existente
(atributos, entidades relacionadas)
– Son información redundante...
– edad [de EMPLEADO], cálculo a partir de fechanacim
– numcopias [de una PELICULA], cuenta del nº de
entidades copia relacionadas con cada película
concreta
» atributo derivado de entidades relacionadas

» atributo derivado del valor de otro atributo


• Atributos almacenados
• nacionalidad [de una PELICULA]
• fechanacim [de un EMPLEADO]
42
Atributos Clave
• Atributo con valor distinto para cada instancia de un tipo
de entidad
dni en EMPLEADO
• Una clave identifica de forma única cada entidad concreta
atributo identificador
• Notación
EMPLEADO EMPLEADO

dni dni

[EN2002] [MPM1999]

43

43
Atributos Clave (ii)
• Una clave puede estar formada por
varios atributos clave compuesta
– Combinación de valores distinta para cada instancia
(nombre, fechanacim) en el tipo de entidad EMPLEADO
– Una clave compuesta debe ser mínima

• Un tipo de entidad puede tener


más de una clave claves candidatas
Claves o Identificadores Candidatos de EMPLEADO:
– dni
– nss
– (nombre, fechanacim)
44
Atributos Clave (iii)
• Atributo identificador principal (IP)
– Clave Principal
– Elegido (por el diseñador) de entre los identificadores
candidatos (IC), para ser el medio principal de
identificación de las instancias del tipo de entidad
– dni en EMPLEADO
• Atributos identificadores alternativos (IA)
– Claves Alternativas
– El resto de IC’s
– nss y (nombre, fechanacim) en EMPLEADO

45
Relaciones

• Relación: Una relación es una asociación entre diferentes


entidades.
• Conjunto de relaciones: un conjunto de relaciones del mismo
tipo.
Es una relación matemática de:
N> 2

E1 E2 E3
En

46
Relaciones
• También “interrelación”
• Asociación, vínculo o correspondencia
entre instancias de entidades relacionadas de alguna manera
en el “mundo real”
– el director “Julio Médem” ha rodado la película
“Tierra”
– el empleado 87654321 trabaja en el local de
videoclub “principal”
– la película “El imperio contraataca” es una
continuación de la película “La guerra de las
galaxias”

47
Relaciones
• Estructura genérica o abstracción del conjunto de
relaciones existentes entre dos o más tipos de
entidad
– un DIRECTOR ha rodado PELICULA’s

DIRECTOR HA _ RODADO PELICULA

48
Relaciones
• Número de tipos de entidad que participan
en el tipo de relación
– Binaria: grado 2 (el más frecuente)
– Ternaria: grado 3
– Reflexiva (o recursiva): grado 1

ACTOR ACTUA _EN PELICULA

ALQUIL
CLIENTE PELICULA
A

CONTINUACION PELICULA
DE LOCAL _ VIDEOCLUB

49
Relaciones
• Todo tipo de entidad que participa en un tipo de
relación juega un papel específico en la relación
DIRECTOR HA _ RODADO PELICULA
realizador film

• Es en los tipos de relación reflexivos donde se deben


usar los roles
original

VERSIÓN _ DE PELICULA
versión

50

50
Relaciones
• Limitan las posibles combinaciones de entidades que
pueden participar en las relaciones
• Extraídas de la situación real que se modela
– “Una película debe haber sido dirigida por uno y
sólo un director”
– “Un director ha dirigido al menos una película y
puede haber dirigido muchas”
• Clases de restricciones estructurales:
– Razón de cardinalidad (o tipo de correspondencia)
– Razón de participación

51
Ligaduras de correspondencia
• Correspondencia de cardinalidades: expresa el número de
entidades a las que otra entidad puede estar asociada via un
conjunto de relaciones.
Uno-uno 1-1 Varios-uno n-1
Uno-varios 1-n Varios-varios n-n

trabajador ACTOR
EMPLEADO
1 encargado 1 personaje M

TRABAJA_EN SUPERVISA ACTUA_EN

sucursal N N
1 film
LOCAL _
lugar trabajo VIDEOCLUB PELICULA

52
Ligaduras de Correspondencia
• Dependencia de existencia: si la existencia de la entidad x
depende de la existencia de la entidad y, entonces se dice que x
tiene dependencia de y.
– Si y se borra también se borrara x DIRECTOR
– La entidad y es la entidad dominante 1

– La entidad x es la entidad subordinada HA_ RODADO


N ACTOR
PELICULA personaje M

• Clases de participación: ACTUA_EN

– Participación total (dependencia en existencia) film


N

– Participación parcial PELICULA

53
Atributos en Relación
papel
M:N salario

ACTOR ACTUA_EN PELICULA


(0,m) (1,n)

“salario” de un actor por participar en cierta película


“tipo de papel” que interpreta un actor en una película
(prota, secundario, reparto,...)

Ojo: una relación puede tener atributos, pero nunca


una clave.
54
Llaves ó Claves
• Superllave: Uno o mas atributos que nos permite
identificar una entidad en especifico dentro de un
conjunto de entidades y ninguna otra entidad la tiene.
Toda relación tiene por lo menos una súper llave
llamada llave primaria.

55
Llaves ó Claves

• Llave candidata: Son aquellos atributos que tienen


características para ser súper llaves, pero hay dos o
mas en una entidad; una se tomara como llave
primaria y otra como llave secundaria.
El atributo que es la llave primaria en una entidad se
subraya.

56
• Abstracción de la información
• 􀁻 Nivel físico:
• 􀁻 Nivel más bajo
• 􀁻 Representación del nivel más bajo de
• abstracción, en éste se describe en detalle la
• forma en como de almacenan los datos en los
• dispositivos de almacenamiento
• 􀁻 Nivel Conceptual
• 􀁻 Describe que datos son almacenados
• realmente en la base de datos y las relaciones
• que existen entre los mismos, describe la base
• de datos completa en términos de su
• estructura de diseño
57
3.- COMANDOS
SQL

58
Bases de Datos Relacionales
Servidor de base de datos

Base de datos “Finanzas”

Base de datos “Demo”

Base de datos “Test”

59
Crear una Tabla
• Vamos a crear una tabla llamada empleado en alguna base
de datos, por ejemplo test.
test=> CREATE TABLE empleado (
test(> nombre VARCHAR(20),
test(> apellido VARCHAR(20),
test(> sueldo FLOAT,
test(> sexo CHAR(1),
test(> edad INTEGER,
test(> transacción TIMESTAMP DEFAULT
CURRENT_TIMESTAMP,
test(> ingreso DATE);

60
Insertar Datos
test=> INSERT INTO empleado (nombre, apellido,
sueldo, sexo, edad, ingreso) VALUES
test-> ('Javier', 'Ramírez', 34452.89, 'M', 23, '4-06-08');
Observamos que se ponen las columnas en las que se
va a insertar, no se puso la columna transacción ya
que esta se inserta por default con la hora y la fecha
actuales.

61
Seleccionar
Obtener toda la tabla empleado
test=> SELECT * FROM empleado;

Obtener algunas columnas y todos los renglones de


la tabla empleado
test=> SELECT apellido, sueldo, ingreso FROM
empleado;

62
Seleccionar Renglones
Específicos
En SELECT se usa la cláusula WHERE, donde se especifican los
renglones que se quieren obtener. Por ejemplo el nombre y
apellido de los empleados cuya edad sea mayor ó igual a 25
años.
test=> SELECT nombre, apellido FROM empleado
test-> WHERE edad >=25;

O bien, los que su apellido sea Ramírez


test=> SELECT nombre, apellido FROM empleado
test-> WHERE apellido = 'Ramírez';
Como se trata de columnas tipo caracter, se usan apóstrofes y
debe escribirse exactamente como esté en la base de datos.

63
Removiendo Datos con DELETE

• Con DELETE podemos mover uno ó bien todos los


renglones de una tabla, por ejemplo DELETE FROM
empleado; eliminaría todos los datos de la tabla
empleado. Si utilizamos la cláusula WHERE se
eliminan los renglones que cumplan la condición,
por ejemplo:
test=> DELETE FROM empleado
test-> WHERE ingreso = '2008-12-24’;

64
Modificando Datos con UPDATE
En una base de datos además de insertar y eliminar datos
hay que actualizar. Por ejemplo, la edad del empleado
Javier Pérez es de 35 años.
test=> UPDATE empleado SET edad = 35 WHERE
apellido = 'Pérez';
La cláusula WHERE controla los renglones en los que se
llevará a cabo la modificación. Si no se pone esta
cláusula, se cambiarían la edad de todos los empleados
a 35.

65
Ordenando Datos con ORDER BY
Cuando hacemos un SELECT, los renglones se despliegan
con un orden no determinado. Si se quieren obtener los
renglones en un orden específico, es necesario
aumentar la cláusula ORDER BY al final del SELECT.
test=> SELECT * FROM empleado ORDER BY apellido;
Para invertir el orden se usa DESC
test=> SELECT * FROM empleado ORDER BY edad
DESC;
Se puede ordenar por distintas columnas, si en la primera
hay dos valores iguales, se usa la siguiente para ver
cual va primero.

66
Destruyendo Tablas con DROP
• Cuando queremos eliminar completamente la
tabla escribimos:
DROP TABLE empleado;
• Si queremos eliminar todos los datos de una
tabla pero conservar su estructura utilizamos
(no ejecutarla):
DELETE FROM empleado;

67
Caracteres Especiales
Si el empleado que vamos a insertar tiene un apóstrofe
en el nombre, por ejemplo:
test=> INSERT INTO empleado (nombre, apellido,
sueldo, sexo, edad, ingreso) VALUES
test-> ('Jack', 'O'Donnell', 34452.89, 'M', 23, '4-06-08');
Me marca un error: test'>
Para resolverlo:
'O''Donnell',se ponen dos apóstrofes ó
'O\'Donnell' se pone una diagonal invertida

68
Etiquetado de Columnas y
Comentarios
• El nombre que aparece en la salida de un SELECT hasta arriba
es la etiqueta de la columna que corresponde al nombre del
atributo. Se puede cambiar usando la palabra clave AS, por
ejemplo:
test=> SELECT nombre AS Razón_Social FROM cuenta;
test=> SELECT 1 + 3 AS total;

• Con dos guiones -- indica que hasta el final del renglón es un


comentario
• Con /* al principio y con */ al final indica que todo lo que está
contenido es un comentario
test=> /*Esto es un comentario
test*> y no ejecuta nada*/;
69
Uso de AND/OR
AND y OR se usan para conectar condiciones simples.
Insertaremos más datos en empleado:
test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso)
VALUES ('María', 'Pérez', 2317.89, 'F', 23, '30-07-2005');
test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso)
VALUES ('Alejandro', 'Padilla', 4317.86, 'M', 24, '12-08-2006');
test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso)
VALUES ('Raquel', 'Carmona', 5817.86, 'F', 24, '15-02-2006');
test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso)
VALUES ('Armando', 'Pinillos', 7317.86, 'M', 24, '13-08-2005');
test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso)
test=> VALUES ('María', 'Romero', 11317.89, 'F', 23, '30-08-2004');

70
AND se usa para combinar las dos comparaciones que conecta, ejemplo:
test=> SELECT * FROM empleado WHERE nombre='María' AND
apellido='Pérez';
OR verifica que se cumpla una de las dos comparaciones al menos,
ejemplo:
test=> SELECT * FROM empleado WHERE sexo = 'F' OR edad = 24;
Si se combinan ANDs y ORs en un mismo query es mejor agrupar los
ANDs y los ORs usando paréntesis. Los ANDs se evalúan primero.
Por ejemplo, si se quieren los de apellido Pérez y que sean hombres ó
mujeres si no usamos paréntesis el resultado es incorrecto, ya que se
evalúa el AND primero:
test=> SELECT * FROM empleado WHERE apellido='Pérez' AND
sexo='M' OR sexo='F'; Me da los de apellido Pérez Y son de sexo M
pero también todos los de sexo F´, ya que primero se ejecuta el AND
y después el OR.
Lo correcto es:
test=> SELECT * FROM empleado WHERE apellido='Pérez' AND
(sexo='M' OR sexo='F'); Este me da los que son de apellido Pérez y
que son de sexo M ó F.
71
Between y Like
Si queremos aquéllos empleados que están entre 24 y 30 años de edad:
test=> SELECT * FROM empleado WHERE edad >= 24 AND edad
<= 30;
test=> SELECT * FROM empleado WHERE edad BETWEEN 24 AND
30;
Para obtener los datos de los empleados cuyo apellido inicia con la
letra R:
test=> SELECT * FROM empleado WHERE apellido LIKE 'R%';
Obtener los que ingresaron en 2008:
test=> SELECT * FROM empleado WHERE ingreso LIKE '2008%';

72
Comparaciones con LIKE

Empieza con una D LIKE ‘D%’


Contiene una D LIKE ‘%D%’
Tiene D en 2da posición LIKE ‘_D%’
Empieza con D y tiene una e LIKE ‘D%e%’
No empieza con D NOT LIKE ‘D%’

73
Agregación
A veces es necesario resumir cierta información. En
lugar de ver renglones, solo se necesita saber
cuántos son. Para esto se usan las siguientes
palabras clave:
COUNT(*)cuenta renglones
SUM(nombre_col) total
MAX(nombre_col) máximo
MIN(nombre_col) mínimo
AVG(nombre_col) promedio

74
Ejemplos
Contar número de renglones
test=> SELECT COUNT(*) FROM empleado;
Obtener la suma de los sueldos
test=> SELECT SUM(sueldo) FROM empleado;
Obtener el sueldo máximo
test=> SELECT MAX(sueldo) FROM empleado;
Obtener la edad mínima
test=> SELECT MIN(edad) FROM empleado;
Obtener el sueldo promedio
test=> SELECT AVG(sueldo) FROM empleado;

75
GROUP BY
En los ejemplos anteriores nos regresó un renglón como resultado y
sólo se usó una columna con el agregado.
Usando los agregados con GROUP BY se tendrá la aplicación del
agregado en una columna, en los renglones agrupados por otra
columna.
SELECT COUNT(*) FROM empleado, regresa el número de
renglones en la tabla.
Si queremos contar cuántos son sexo M y cuantos F:
test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY sexo;
Si por sexo se quiere saber datos del salario y de la edad:
test=> SELECT sexo, MIN(edad), MAX(edad), AVG(sueldo) FROM
empleado GROUP BY sexo ORDER BY 4 DESC;

76
HAVING
Permite probar condiciones en los valores agregados. A
menudo se usa con GROUP BY. Con HAVING se pueden
incluir o excluir grupos basados en el valor de agregación
para ese grupo.
En el ejemplo de contar los empleados por sexo, podemos
limitar para que despliegue solo aquéllos que sean más de 3,
el query que cuenta empleados por sexo es:
test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY
sexo;
Sólo los que sean más de 3 empleados de ese sexo:
test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY
sexo HAVING COUNT(*)>3;

77
4. CREACION DE UNA BASE DE DATOS
MEDIANTE UN PROGRAMA VISUAL
(MICROSOFT ACESS).

78
Crear una base de datos nueva
• Al iniciar el programa se presentará el panel de
Nuevo archivo, en el que podemos abrir y crear una
base de datos.

79
Crear una base de datos nueva
• Si se selecciona Base de datos en blanco y se hace clic.
• Aparecerá otro cuadro de diálogo en el que se dará nombre a la base de datos que
se va a crear.
• Se debe utilizar un nombre apropiado y relacionado con el contenido de la base de
datos, para poder recuperarla con facilidad posteriormente.

80
Crear una base de datos nueva
• Se escribe el nombre en Nombre de archivo y se pulsa el botón crear.

• Desde esta ventana se trabajan las bases de datos de Access.


Seleccionando las pestañas se accede a los distintos elementos que
componen una base de datos; tablas, consultas, formularios, informes,
macros y módulos.

81
Crear una base de datos nueva
• Para volver a esta ventana desde cualquier otra se pulsa el
botón .
• Seleccionado el objeto adecuado y pulsando el botón
ascvo , se crea un objeto del tipo seleccionado.
• El botón de la barra de herramientas cambia dependiendo
del último objeto creado.
• Al pulsarlo se creará otro objeto similar al último creado.
• Si se quiere elegir otro objeto sólo hay que hacer clic sobre la
flecha de la derecha.
• Se desplegará el menú de todos los elementos de Access.

82
Crear una base de datos nueva

• En este menú se encuentran todos los elementos que componen Access.


• Para crear uno de ellos, basta con situar el ratón por encima de él y hacer clic.

83
Crear una base de datos nueva
• Otra forma de crear un elemento de Access sin
seleccionar la pestaña es a través del menú Insertar.

84
Tablas
• Para empezar a trabajar con una base de datos
primero es necesario crear las tablas.
• Dentro de cada una hay que definir los campos que
contendrán la información.
• Igual que cualquier otro objeto de la base de datos,
hay varias formas de crear una tabla nueva:
– desde el menú.
– desde la barra de herramientas.
– desde la ventana de la base de datos.

85
Tablas: Creación desde el menú

• Para crear una tabla desde los menús hay que


seleccionar el menú Insertar y dentro de este
el comando Tabla.

86
Tablas: Creación desde el menú

• Aparece el siguiente cuadro de diálogo:

87
Tablas: Creación desde el menú
• Estas son las diferentes opciones que presenta Access para crear una
tabla:
– Vista hoja de datos: crea una nueva tabla con formato de tabla. En la primera
fila de la tabla aparecen los campos: Campo 1, Campo 2, etc., sobre los cuales
se escriben los nombres de los campos.
– Vista diseño: permite crear los campos manualmente y configurar el diseño de
la tabla.
– Asistente para tablas: el asistente pide las características de los campos y de la
tabla y la genera automáticamente.
– Importar tabla: esta opción permite importar datos de otra base de datos, que
no necesariamente tiene que estar creada por Access.
– Vincular tabla: crea vínculos entre las tablas importadas y las originales, las
modificaciones que se efectúen en los datos se transmiten a aquéllas.

88
Tablas: Creación desde la barra de
herramientas
• Para crear una tabla desde la barra de herramientas hay que
pulsar el botón , y elegir el comando Tabla.
• Muestra el mismo cuadro de diálogo que si se hubiera
realizado desde el menú insertar.

89
Tablas: Creación desde la ventana de la
base de datos
• Para poder crear una tabla desde esta ventana hay que tener
seleccionado el botón de la barra de objetos.

90
Tablas: Creación desde la ventana de la
base de datos
• Ahora hay dos opciones:
• Pulsar el botón : Nos volverá a presentar el mismo diálogo de creación que el
de la transparencia 32.
• Pulsar cualquiera de las tres ordenes que contiene la vista:
– Crear una tabla en vista diseño. Corresponde a Vista diseño de los puntos anteriores.
– Crear una tabla utilizando el asistente. Corresponde al Asistente para tablas.
– Crear una tabla introduciendo datos. Corresponde a Vista hoja de datos.
• Cualquiera de estas opciones es válida para crear una tabla. Pero las opciones a
través de las cuales se crea personalmente una tabla son vista hoja de datos y vista
diseño.
• Con la opción vista diseño se crea la estructura para luego rellenar los datos en
vista hoja de datos.
• Pero también se puede empezar directamente en vista hoja de datos
introduciendo información y Access crea la estructura automáticamente.
• Independientemente del método utilizado para crear una tabla, se puede emplear
la vista diseño en cualquier momento para personalizar más la tabla, por ejemplo
para agregarle campos nuevos.

91
Tablas: El asistente de creación de
tablas
• El asistente consta de 3 fases:
– Elegir los campos de las tablas: Se elegirá el tipo de tablas que
queremos que nos muestra y se seleccionarán las tablas para que
muestre los campos que podemos elegir.

92
Tablas: El asistente de creación de
tablas
– Nombre de tabla y clave principal: Se introducirá el nombre de la tabla y si
queremos que Access elija la clave principal por nosotros o no.

93
Tablas: El asistente de creación de
tablas
– Indicaremos si queremos modificar el diseño, introducir datos
directamente o que el asistente cree un formulario para introducir los
datos.

94
Tablas: Introduciendo datos
• Hacemos doble clic en la opción que está en azul:

95
Tablas: Introduciendo datos
• Obtenemos lo siguiente:

96
Tablas: Introduciendo datos
• En esta tabla ya se puede empezar a introducir datos, aunque antes conviene dar nombre a los campos.
Para esto se hace doble clic sobre Campo1 y se escribe el nombre que se le quiera dar al campo.
• Los nombres de los campos tienen que cumplir unas normas:
– Pueden tener hasta 64 caracteres.
– Pueden incluir cualquier combinación de letras, números, espacios y caracteres especiales, excepto
el punto (.), el signo de exclamación (!), el acento grave (`) y corchetes ([ ]).
– No pueden comenzar por un espacio en blanco.
– No pueden contener caracteres de control (valores ASCII de 0 a 31).
– No pueden incluir comillas dobles (")
– Nos se pueden repetir en la misma tabla.

97
Tablas: Introduciendo datos
• Para escribir el primer registro se sitúa el ratón sobre el campo y se escribe el
primer dato. Para pasar a la siguiente columna se puede usar el ratón o la tecla
tabulador [ ].
• Siguiendo el mismo procedimiento, doble clic sobre la primera fila, se añaden los
campos: apellidos, fecha de nacimiento y dirección.
• Access XP decidirá las características de los campos según los datos introducidos,
pero es conveniente revisarlas antes de introducir más datos, esto se hace en el
modo de vista diseño.

98
Tablas: Vista Diseño
• Parar pasar a la vista diseño, debemos seleccionar:

• Aparece una ventana donde se puede o bien definir un diseño para nuestra
tabla, si no se había hecho antes, o bien se puede modificar o agregar
campos nuevos. En una palabra, se puede cambiar el Diseño de la tabla.

99
Tablas: Vista Diseño
• Este diálogo se compone de tres partes. Arriba se nos muestran los campos, su tipo y la
descripción. Abajo a la izquierda se nos muestra las propiedades del campo seleccionado y
abajo a la derecha se nos muestra una ayuda sensible a lo que estemos realizando.
• En la parte superior tenemos tres columnas. En la primera columna se ven los nombres de
los campos, en la segunda columna el tipo de datos que ha elegido automáticamente Access
XP con los datos introducidos (si hemos creado la tabla en vista hoja de datos) y en la tercera
una descripción que podemos introducir al campo que Access podrá usar cuando se creen
formularios e informes .

100
Tablas: Vista Diseño
• Ahora veremos el significado de cada propiedad del campo que nos aparece en la
Vista Diseño de nuestra tabla:

101
Tablas: Vista Diseño
•Tamaño del Campo:
•Aquí determinamos el espacio que queremos asignar al
campo, el número máximo de caracteres que queremos
almacenar.
•Para Texto este valor no puede ser mayor de 255.
•Para numérico por ejemplo, puede ser Entero Largo (entre
-2.000 millones y 2.000 millones) o Doble (para valores
decimales).
•Formato:
•Determina cómo se muestran los datos (por ejemplo
moneda o fecha).
•Cuando un valor puede tener formato lo seleccionamos
desde la lista desplegable.

102
Tablas: Vista Diseño
•Lugares decimales:
•Aquí seleccionamos el número de decimales que Access
muestra en los campos de tipo Moneda o Numérico.
•Máscara de entrada:
•Esta propiedad sirve para introducir datos válidos en un
campo.
•Por defecto no hay ninguna máscara de entrada pero en
ocasiones nos puede ser útil (sobre todo para las fechas).
•Título:
•Es una propiedad opcional, nos sirve si queremos que el
nombre de un campo en vista de Hoja de datos sea distinto
del nombre del campo en la Vista Diseño.

103
Tablas: Vista Diseño
• Valor predeterminado:
• Nos puede ser útil si tenemos siempre el mismo valor en el campo (o casi
siempre).
• Si por ejemplo en nuestra tabla de autores el apellido que más se repita es
"García" podemos definirlo como el valor predeterminado.
• Para eso simplemente escribimos el valor predeterminado en la propiedad
del campo o pulsamos el botón con "..." para generar expresiones complejas.

• Regla de Validación y Texto de Validación:


• Son propiedades avanzadas que permiten limitar los valores que
introducimos en un campo (Regla) y definir el mensaje de error cuando
introducimos un valor prohibido por la regla (Texto).

• Requerido:
• Por defecto está puesto "No", pero si lo seleccionamos Access no nos
permitiría dejar un campo en blanco.

• Permitir longitud cero:


• Permitir o No las cadenas de longitud cero. Por defecto es "No".

104
Tablas: Vista Diseño
• Indexado:
• El indexado permite acelerar los procesos de búsqueda y ordenación pero
hace aumentar el tamaño de la base de datos. Por defecto solo la clave
principal (si la tenemos) aparece indexada, para el resto de los campos es
opcional.
• Las opciones de esta propiedad:
• Sí (Con duplicados): El campo se indexará pero permitiría tener valores
repetidos (duplicados) en más de un registro.
• Sí (Sin duplicados): El campo se indexará pero no admitirá valores
duplicados.
• No: El campo no se indexará.

• Para obtener una vista de todos los campos que tengamos indexados pulsar el
menú Ver / Índices o el botón "Índices" de la Barra de herramientas.
• Todo esto parece ser demasiada información pero en la práctica normalmente
no necesitamos configurar cada una de estas propiedades, muchas veces es
suficiente dejar los valores por defecto.

105
Tablas: Vista Diseño
• Ya podéis introducir todos los campos que queráis
en la tabla, y definir el tipo de datos que vais
introducir en cada campo.

106
Tablas: Vista Diseño
• Si estamos introduciendo una tabla nueva en Vista diseño, o al pasar de
la vista de datos a vista diseño, Access pedirá que se le de un nombre a
la tabla.

• A continuación aparecerá otro mensaje comunicando que no se ha


creado una clave principal. Por el momento se pulsa No, ya que no se va
a crear ahora, se verá más adelante en este manual.

107
Tablas: Tipos de Datos
Valor Tipo de datos Tamaño
Texto Texto o combinaciones de texto y números, así Hasta 255 caracteres o la longitud que
como números que no requieran cálculos, como indique la
los números de teléfono. Es el predeterminado. propiedad Tamaño del campo.

Memo Estos campos son particularmente adecuados para dotar a cada Hasta 65.535 caracteres.
registro de la tabla de un lugar para escribir todo tipo de
comentarios. No es necesario definir su longitud, ya que la misma
se maneja de manera automática, extendiéndose a medida que se
le agrega información. El texto allí colocado no dispone de ninguna
posibilidad de formato, ni de carácter ni de párrafo.

Numérico Datos numéricos utilizados en cálculos matemáticos. 1, 2, 4 u 8 bytes (16 bytes si el valor de la
propiedad Tamaño del campo es Id. de
réplica).

Fecha/Hora Valores de fecha y hora. 8 bytes.

Moneda Valores de moneda y datos numéricos utilizados en cálculos 8 bytes.


matemáticos en los que estén implicados datos que contengan
entre uno y cuatro decimales. La precisión es de hasta 15 dígitos a
la izquierda del separador decimal y hasta 4 dígitos a la derecha del
mismo.

108
Tablas: Tipos de Datos
Sí/No Valores Sí y No, y campos que contengan uno de 1 bit.
entre dos valores (Sí/No, Verdadero/Falso o
Activado/desactivado).

Objeto OLE Objeto (como por ejemplo una hoja de cálculo de Hasta 1 gigabyte (limitado por el
Excel, un documento de Word, gráficos, sonidos u espacio disponible en disco)
otros datos binarios) vinculado o incrustado en una
tabla de Access.

Hipervínculo Almacena una ruta UNC o una URL. Hasta 64000 caracteres.

Autonumérico Número secuencial (incrementado de uno a uno) 4 bytes (16 bytes si el valor de la
único, o número aleatorio que Microsoft Access propiedad Tamaño del campo es Id.
asigna cada vez que se agrega un nuevo registro a La réplica).
una tabla. Los campos Autonumérico no se pueden
actualizar.

Asistente para Crea un campo que permite elegir un valor de otra Tamaño igual al del campo clave
tabla o de una lista de valores mediante un cuadro principal utilizado para realizar la
búsquedas de lista o un cuadro combinado. búsqueda.

109
Tablas: Introducir datos en la tabla
• En Vista Hoja de Datos se pueden introducir datos.
• En el primer registro sólo aparecerá una fila.
• Se hace clic sobre ella y se escriben los datos en los campos.
• En el momento en que se empiece a escribir se añadirá una fila más.
• En la primera columna de la fila sobre la que esté escribiendo aparecerá
un lápiz, y en la siguiente un asterisco.
• Para pasar de un campo a otro pulse Intro o Tabulador.

• Cuando se quiere añadir otro registro sólo se tiene que pinchar sobre la
fila con el asterisco.

110
Tablas: Ejercicio1: Hospital:
• Se van a crear 3 tablas:
• Pacientes:
– Campos: Código del paciente, Nombre, Apellidos, Sexo, Fecha
de nacimiento, DNI, Dirección, Población, Provincia y Teléfono.
• Médicos:
– Campos: Código del médico, Nombre, Apellidos, Departamento,
Dirección, Teléfono, Fecha de nacimiento, DNI, y Salario.
• Visitas:
– Campos: Nº de visita, Fecha de visita, Código del paciente,
Código del médico, Motivo de visita, Exploración, Pruebas
realizadas, Diagnóstico.
• Además, tenéis que determinar el tipo de datos que corresponden
a cada campo, y en cada una de las tablas.

111
Tablas: Ejercicio1: Hospital:
• Las tablas presentarán el siguiente aspecto:

112
Tablas: Ejercicio1: Hospital:
• Insertamos los siguientes registros:

113
Tablas: Ejercicio1: Hospital:

114
Tablas: Ejercicio2: Empresa:
• Se van a crear 6 tablas:
• Clientes:
– Campos: Id_Cliente, Nombre_Compañía, Nombre_Contacto, Cargo_Contacto,
Dirección, Ciudad, Código_Postal, País, Teléfono y Fax.
• Empleados:
– Campos: Id_Empleado, Apellidos, Notas, Nombre, Cargo, Fecha_Nacimiento,
Fecha_Contratación, Dirección, Código_Postal, Teléfono_Domicilio.
• Productos:
– Campos: Id_Producto, Nombre_Producto y Precio_Unidad.
• Pedidos:
– Campos: Id_Pedido, Id_Cliente, Id_Empleado, Fecha_Pedido, Fecha_Entrega,
Fecha_Envío y Forma_Envío.
• Compañía de envíos:
– Campos: Id_Compañía_Envíos, Nombre_Compañía y Teléfono.
• Detalles de pedido:
– Campos: Id_Pedido, Id_Producto, Id_Compañía_Envíos, Precio_Unidad,
Cantidad y Descuentos.

115
Tablas: Ejercicio 2: Empresa:
• Las tablas tendrán el siguiente aspecto:

116
Tablas: Ejercicio 2: Empresa:
• Insertamos los siguientes registros:

117
Tablas: Ejercicio 2: Empresa:

118
Tablas: Ejercicio3: Música:
• Se van a crear 2 tablas:
• Discos:
– Campos: Id_Disco, Título_Disco, Intérprete,
Número_Copias, Disponible,
Id_Tipo_Producto, Carátula y
Tema_Principal.
• Tipo Productos:
– Campos: Id_Tipo_Producto e
Tipo_Producto.

119
Tablas: Ejercicio 3: Música:
• Las tablas tendrán el siguiente aspecto:

120
Tablas: Ejercicio 3: Música:
• Insertamos los siguientes datos:

121
Tablas: Insertar imágenes
• Nos creamos una nueva base de datos, que vamos a llamar “Música”.
• Dentro de ella, creamos una tabla que se llame “Discos”.
• Esta tabla contendrá los siguientes campos: Id_Disco, Título_Disco,
Intérprete, Número_Copias, Disponible, Tipo_Producto, Carátula y
Tema_Principal.
• Una vez que están creados los campos, introducimos los siguientes
registros:

122
Tablas: Insertar imágenes
• Una vez que tenemos los registros creados vamos a insertar las carátulas.
• Para insertar imágenes pinchamos con el botón derecho del ratón sobre la
celda en la que queremos insertar la imagen, y a continuación en Insertar
Objeto:

123
Tablas: Insertar imágenes
• Nos sale el siguiente menú, en el que elegimos
la opción Imagen de Paintbrush, y luego
damos a Aceptar:

124
Tablas: Insertar imágenes
• Se nos abre una ventana del Paint:

125
Tablas: Insertar imágenes
• A continuación nos vamos a la carpeta en la que tenemos los
archivos BMP de imagen.
• Pinchamos con el botón derecho del ratón sobre la imagen
que vamos a insertar.
• Abrir con Paint.

126
Tablas: Insertar imágenes
• Se nos abre otra ventana del Paint con la foto que hemos
elegido:

• Pinchamos en el botón y seleccionamos la foto.


• Después hacemos Edición/Copiar.
• Nos vamos a la otra pantalla de Paint que se nos abrió.

127
Tablas: Insertar imágenes

• Hacemos Edición/Pegar.

• Pinchamos Archivo/Actualizar Discos: tabla.


• Por ultimo, Archivo/Salir y volver a Discos: tabla.
128
Tablas: Insertar imágenes
• Acabamos de insertar una imagen.
• La tabla tendrá el siguiente aspecto:

129
Tablas: Insertar sonido
• Hay tres posibles formatos para incrustar
documentos de audio en una base de datos de
Access:
– Clips multimedia: Se pueden insertar tanto archivos *.wav,
como *.mp3.
– Archivos de sonido: Sólo admite archivos *.wav.
– Paquetes
• El mejor de todos, y el que vamos a utilizar será
Paquetes, aunque veremos como se crean cada uno
de ellos.

130
Tablas: Insertar sonido
• Clip multimedia:
– Botón derecho del ratón/Insertar objeto.
– Aparece el siguiente menú:

– Pinchamos en “Clip Multimedia”, y damos a Aceptar.

131
Tablas: Insertar sonido
• Clip multimedia:
– Aparece el siguiente programa:

– Pinchamos Archivo/Abrir

– Elegimos el archivo que deseemos insertar, y obtenemos:

132
Tablas: Insertar sonido
• Clip multimedia:
– Pinchamos Archivo/Actualizar tabla.

– Por último pinchamos Archivo/Salir y volver a tabla.

– El inconveniente de este tipo de formato es que sólo se puede


escuchar el archivo de sonido desde la tabla.
– Si quisiéramos escucharlo desde un formulario, por ejemplo, no
podríamos.
133
Tablas: Insertar sonido
• Archivo de Sonido:
• De nuevo: botón derecho de ratón/Insertar objeto:

• Aparece el siguiente menú:

• Pinchamos en Archivo de Sonido, y Aceptar.

134
Tablas: Insertar sonido
• Aparece el siguiente programa (grabadora de sonidos).

• Este programa te permite crear un archivo *.wav, o abrir uno


ya existente.
• Pinchamos Edición/Insertar archivo.
• Elegimos el archivo de sonido que deseamos.
• Finalmente, pinchamos en Archivo/Salir y volver a tabla.

135
Tablas: Insertar sonido
• El aspecto de la tabla sería el siguiente:

• Para escuchar los archivos de sonido, independientemente


del formato elegido, hay que hacer doble click sobre el
archivo deseado.

136
Tablas: Insertar sonido
• La última forma de insertar un archivo de sonido es la
siguiente:

• Aparece el siguiente asistente:

137
Tablas: Insertar sonido
• Pulsamos Aceptar.

• Pulsamos Archivo/Importar:

• Elegimos el archivo que queremos incrustar:

138
Tablas: Insertar sonido
• Si queremos que aparezca un icono que indique que se trata de un
archivo de sonido, pinchamos en Insertar icono:

• Y aparece el siguiente mensaje:

• Hacemos click en Aceptar, y aparece la siguiente ventana:


– Elegimos el icono que más nos
guste para indicar que se trata de
un archivo de sonido, y damos a
Aceptar.

139
Tablas: Insertar sonido
• El resultado es el siguiente:

• Aunque todavía no hemos visto los formularios, quedaría así:

140
Tablas: Insertar un campo
• El campo Sexo se encuentra entre Apellidos y Fecha de
Nacimiento.
• Para introducir un campo nuevo entre dos ya existentes pulsa
la tecla .
• El campo insertado aparecerá sobre el campo que estaba
seleccionado cuando se pulsó la tecla insertar campo en este
caso, estaba seleccionado "Fecha de nacimiento", por lo tanto
el nuevo campo se creará encima de él y se le pondrá el
nombre "Sexo".
• Para introducir el nombre del campo "Sexo" se tiene que
seleccionar el campo Fecha de nacimiento, y pulsar insertar
campo:

141
Tablas: Mover un campo
• A continuación se va a mover el campo "DNI" y se va a situar debajo de
"Fecha de nacimiento".
• Para mover el campo, primero se debe seleccionar haciendo clic sobre él.
• El campo cambia de color y a su izquierda aparece una flecha.
• Situando el cursor sobre esta flecha el cursor mismo se convierte en otra
flecha.
• Si se pulsa en ese momento el botón del ratón se puede arrastrar el
campo a la posición que se quiera.
• La tabla de pacientes quedará finalmente así:

142
Tablas: Editar registros
• Modificar registros:
– Es posible modificar los datos que contienen los
registros introducidos, sin más que situar el cursor
en el campo que se quiere modificar y establecer
los cambios necesarios en el dato que contiene,
pudiendo también eliminar el dato y dejar el
campo en blanco o a cero.
– De este modo tan sencillo se pueden cambiar
datos que han sido mal introducidos, modificar
datos que han variado o bien introducir datos que
no se habían introducido anteriormente.

143
Tablas: Editar registros
• Eliminar registros:
– Es posible que en alguna ocasión algunos de los registros introducidos en una
base de datos dejen de ser necesarios.
– Su eliminación de la base de datos es sencilla si bien hay que tener presente
que el proceso es irreversible, por lo cual hay que tener muy claro que el
registro ya no va a ser necesario.
– Para eliminar un registro basta con activar el mismo, situando el cursor en uno
de sus campos, y seleccionar la opción Eliminar registro del menú Editar, o
bien hacer clic sobre el botón Eliminar registro de la barra de
herramientas.
– Es posible eliminar varios registros a la vez, siempre que éstos estén contiguos.
– Para ello hay que seleccionar el primer registro haciendo clic sobre su selector
(cuadro gris situado a la izquierda del primer campo de cada registro) y, sin
soltar el botón del ratón, arrastrarlo hacia abajo hasta el último registro que se
quiere eliminar.
– Los pasos siguientes son los mismos que para un registro, pudiendo también,
en este caso, ser eliminados pulsando la tecla Supr.

144
Tablas: Modificar el aspecto de la tabla
• Modificar el tipo de letra:
– Hay que tener en cuenta que la modificación del tipo de letra afecta a la
fuente con que se visualiza toda la tabla.
– Los pasos a seguir son:
– Seleccionar la opción Fuente del menú Formato.
– El cuadro de diálogo que aparece es el que muestra la figura siguiente.

– Establecer las opciones que se quieren modificar.


– Hacer clic sobre el botón Aceptar para aplicar el tipo de letra seleccionado
en la tabla.

145
Tablas: Modificar el aspecto de la tabla
• Modificar el aspecto de las celdas:
• También en este caso los cambios realizados en cuanto al formato de las
celdas afectarán a todas las de la tabla.
• Para establecer el formato de las mismas los pasos a seguir son:
– Seleccionar la opción Hoja de datos del menú Formato. Aparecerá el cuadro
de diálogo Formato de hoja de datos.

– Activar las opciones que se precisen.


– Hacer clic sobre el botón Aceptar, para aplicar el formato seleccionado a la
tabla.

146
Tablas: Modificar el aspecto de la tabla
• Modificar el ancho de las columnas:
– En muchas ocasiones es necesario modificar el ancho de las
columnas de una tabla, con el fin de visualizar mejor los datos
contenidos en las mismas, bien por no verse el dato completo
(ensanchamos) o porque la columna es demasiado ancha en
proporción al dato que contiene (estrechamos).
– Se puede modificar el ancho de la columna utilizando la opción
Ancho de columna del menú Formato, aparecerá un cuadro de
diálogo en el que se puede establecer el tamaño requerido.
– La opción Ajuste perfecto permite calcular el ancho exacto para que
quepa el dato.
– El ancho afecta a la columna actual o a las seleccionadas
previamente.

147
Tablas: Modificar el aspecto de la tabla
• Otra posibilidad es la de realizar la modificación directamente sobre la
tabla mediante el ratón, los pasos a seguir en este caso son:
– Situar el puntero del ratón en la primera fila de títulos, sobre el
borde derecho de la columna cuyo ancho se quiere modificar.
– Cuando el puntero del ratón tome forma de doble flecha negra,
pulsar el botón izquierdo del ratón y, sin soltarlo, arrastrar el ratón
hacia la derecha o la izquierda en función de si se quiere ampliar o
reducir, respectivamente, el ancho de la columna (igual que en
Excel).
– Una vez establecido el ancho adecuado soltar el botón del ratón.

148
Tablas: Modificar el aspecto de la tabla
• Para realizar el autoajuste con el ratón, hacer un
doble clic sobre la línea de división de dos
columnas, la columna de la izquierda quedará
autoajustada.
• Si previamente se seleccionan varias columnas
(haciendo clic en el nombre del campo y
arrastrando hacia su derecha para abarcar y
seleccionar los campos contiguos) el autoajuste
afectará a todas las columnas seleccionadas.

149
Tablas: Modificar el aspecto de la tabla
• Modificar la altura de las filas:
– Al modificar la altura de una fila se modifica automáticamente la altura de
todas las filas de la tabla.
– La forma de modificar la altura de las filas es similar a lo expuesto en el caso
de las columnas, a través de la opción Alto de fila del menú Formato o
mediante el ratón, situando el puntero del mismo sobre la columna de
selección (a la izquierda del primer campo del registro) y cuando tome
forma de doble flecha negra pulsar el botón izquierdo del ratón y arrastrar
hasta conseguir la altura indicada.

150
Tablas: Modificar el aspecto de la tabla
• Desplazar columnas:
– Es posible modificar la colocación de los campos en la tabla,
independientemente de la situación de los mismos en la estructura de la
tabla.
– De este modo la visualización de los campos en la hoja de datos se puede
adaptar a lo que en un momento dado se requiera.
– Los pasos a seguir para desplazar campos en una hoja de datos son:
1. Hacer clic sobre el nombre del campo que se quiere mover, seleccionándose así
toda la columna.
2. Situar el puntero del ratón de nuevo sobre el nombre del campo y pulsar el
botón izquierdo.
3. Arrastrar el ratón, sin soltar el botón del mismo, a derecha o izquierda hasta
colocar la columna en el lugar indicado.
– Una línea negra gruesa irá indicando la posición que tomará la columna que se está
desplazando, tal y como muestra la figura.

• Una vez se alcance la posición indicada, soltar el botón del ratón .


151
Tablas: Modificar el aspecto de la tabla
• Ocultar y visualizar columnas:
– Es posible ocultar columnas de la hoja de datos con el fin de que no se
visualicen los datos incluidos en ella, siendo el paso siguiente el de
visualizar las mismas.
• Ocultar columnas:
– Los pasos a seguir para ocultar columnas son:
• Situarse en cualquier celda correspondiente a la columna que se quiera
ocultar o bien seleccionar el campo por su columna.
• Seleccionar la opción Ocultar columnas del menú Formato. La columna
indicada queda oculta de manera inmediata.
• Si se desean ocultar varias columnas a la vez, seleccionarlas y realizar el
paso 2.

152
Tablas: Modificar el aspecto de la tabla
• Mostrar columnas:
– Para volver a visualizar las columnas que se hayan ocultado los pasos a
seguir son:
– Seleccionar la opción Mostrar columnas del menú Formato. Aparece el
cuadro de diálogo en el cual se muestran todos los campos de la tabla,
teniendo los campos que permanecen ocultos desactivada la casilla de
verificación.
– Activar la casilla de verificación de aquellas columnas que se quieren
visualizar.
– Finalmente hacer clic en el botón Cerrar para visualizar las columnas.

153
Tablas: Clave principal
• La clave principal suele ser uno o varios de los campos de la tabla.
• El contenido de este campo identifica cada registro del campo de manera única.
• No se podrán introducir dos registros iguales o almacenar valores nulos en los
campos de la clave principal.
• No es obligatorio que una tabla tenga clave principal, pero si es recomendable (sin
clave no se pueden relacionar).
• Para la tabla “Clientes” se tiene que pensar que campo no se repite.
• Podría ser el campo “Nombre”, pero el nombre no es algo único.
• Los campos “Nombre” y “Apellidos” juntos también se podrían repetir en algún
caso.
• Se podría usar el campo “DNI”, pero decidimos que queremos crear un código
único para cada paciente.
• Se selecciona el campo “Nombre” y se inserta un campo. Se llama “Id_Paciente” y
se elige el tipo de dato Autonumérico.
• Este tipo de dato hace que Access genere un número único a cada registro de la
tabla.
• De esta forma es totalmente seguro que el campo no tendrá ningún registro
repetido.

154
Tablas: Clave principal
• Es decir los datos de un paciente no aparecerán repartidos en tres veces, sino en
una sola vez, de forma que cuando se quiera consultar el estado físico de un
paciente se tendrá la seguridad de que ahí están todos sus datos médicos.

• Para establecer este campo como clave principal se hace clic sobre él y en la barra
de Herramientas se pulsa el botón Establecer Clave Principal. También se puede
realizar esta operación desde el Menú Edición/Establecer Clave Principal.

155
Tablas: Clave principal
• No se tiene que definir obligatoriamente una clave principal, pero normalmente es
conveniente hacerlo.
• Si no se establece la clave principal, al cerrar la tabla aparece un cuadro de diálogo
pidiendo que se establezca:

• Si se elige la opción "Si", Access creará automáticamente un campo Autonumérico


que será la clave principal.

156
Tablas: Tipos clave principal
• En Microsoft Access existen tres tipos de clave principal: Autonumérico,
Campo simple y Campos múltiples.
• Claves principales de Autonumérico
– Un campo Autonumérico puede establecerse para que el programa
introduzca automáticamente un número secuencial cuando se agrega
un registro a la tabla.
– Designar un campo de este tipo como clave principal de una tabla es la
forma más sencilla de crear una clave principal.
– Cuando no se establece una clave principal antes de guardar una tabla
recién creada, Microsoft Access pregunta si se desea que cree una
clave principal automáticamente.
– Si se contesta afirmativamente, Microsoft Access creará una clave
principal de Autonumérico.

157
Tablas: Tipos clave principal
• Claves principales de Campo simple:
– Si se tiene un campo que contiene valores exclusivos, como números de
identificación o números de pieza, se puede designar ese campo como la clave
principal.
– Si el campo seleccionado como clave principal tiene valores duplicados o
Nulos, Microsoft Access no establece la clave principal.
• Claves principales de Campos múltiples:
– En situaciones en las que no se puede garantizar la exclusividad de un solo
campo, se pueden designar dos o más campos como clave principal.
– La situación más común en la que surge este problema es en la tabla utilizada
para relacionar otras dos tablas en una relación varios a varios.
– Si no se está seguro de poder seleccionar una combinación de campos
apropiada para una clave principal de campos múltiples, probablemente
resultará más conveniente agregar un campo Autonumérico y designarlo como
la clave principal en su lugar.

158
Tablas: Ejercicio 1: Empresa:

• Clientes: Clave principal: Id_Cliente.


• Empleados: Clave principal: Id_Empleado.
• Productos: Clave principal: Id_Producto.
• Pedidos: Clave principal: Id_Pedido.
• Compañía de envíos: Clave principal:
Id_Compañía_Envíos.
• Detalles de pedidos: Clave principal compuesta:
Id_Pedido e Id_Producto.

159
Tablas: Ejercicio 1: Empresa:
• En el caso de la tabla de detalles de pedidos la clave está
formada por dos campos, y se establece de la siguiente
forma:
– Abrimos la tabla en modo diseño:

160
Tablas: Ejercicio1: Empresa:
• Mientras mantenemos pulsada la tecla CTRL seleccionamos
los dos campos que formarán la clave principal (Id_Producto
e Id_Pedido) pulsando en los botones de la izquierda.

• Pulsamos sobre el botón para establecer la clave


quedando marcada la clave en ambos campos.

161
Tablas: Ejercicios 2 y 3:
• Hospital:
– Pacientes:
• Clave principal: Código del paciente.
– Médicos:
• Clave principal: Código del médico.
– Visitas:
• Clave principal: Nº de visita.
• Música:
– Discos:
• Clave principal: Id_Disco.
– Tipo Productos:
• Clave principal: Id_Tipo_Producto.

162
Tablas
• Guardar la tabla:
• Una vez haya definido la estructura de la tabla se pulsa el botón de Guardar o
se elige Archivo/Guardar.
• El nombre que se le va a asignar a esta tabla es "Pacientes".
• Conviene guardar la tabla siempre que se realiza algún cambio.
• Abrir y trabajar una tabla:
• Para abrir una tabla de una base de datos ya existente, primero se tendrá que estar
en esa base de datos.
• Para abrir una base de datos, se selecciona Archivo/Abrir, o se pulsa el botón .
• Aparecerá una ventana de diálogo con las diferentes bases de datos, se selecciona
la que interese y se pulsa Aceptar.
• Una vez abierta la base de datos, siempre aparece la ventana de la base de datos,
con múltiples pestañas. Se elige la pestaña y se hace clic sobre la tabla que se
desea abrir.
• Se pulsa el botón Abrir, si se desea introducir datos, o Diseño si se desea añadir un
campo o variar las propiedades de los campos.
• Una vez se encuentra dentro de una de estas dos opciones siempre se tiene la
oportunidad de cambiar pulsando el botón cambiar de vistas:

163
Tablas: Relaciones
• Diferencia de una base de datos relacional:
• La diferencia de las bases de datos relacionales con respecto
a una base de datos plana consiste en que los datos sólo se
introducen una sola vez en una tabla, pero gracias a las
relaciones pueden aparecer en las tablas que se quiera.
• Cualquier modificación sólo hay que realizarla una sola vez y
automáticamente se realizará en todas las demás tablas.
• De este modo se ahorra mucho tiempo, espacio y exactitud
en los datos que siempre estarán actualizados
independientemente de la tabla en la que estemos.

164
Tablas: Relaciones
• Tipos de relaciones:
• Existen tres tipos de relaciones, que se explican a continuación.
• Más adelante se verá cómo quedan guardadas relaciones de este tipo en
Access.
• Relación uno a uno:
– Cada registro de la tabla A se relaciona sólo con un registro de una tabla B y
cada registro de la tabla B se relaciona sólo con un registro de la tabla A.

– Relaciones de este tipo se almacenan guardando en la tabla el identificador


de la otra tabla con la que mantiene la relación.
– En la base de datos del hospital, un registro de la tabla de pacientes sólo se
relaciona con un registro de la tabla médicos.

165
Tablas: Relaciones
• Relación uno a varios:
– Cada registro de la tabla A está relacionado con varios registros de la
tabla B y cada registro de la tabla B está relacionado con un sólo un
registro de la tabla A.

– Aplicando esto a nuestro ejemplo, una relación de este tipo se daría


entre la tabla pacientes y la tabla médicos, ya que el mismo médico
se hará cargo de varios pacientes.
– Un solo registro de la tabla de médicos se relaciona con varios
registros de la tabla de pacientes.

166
Tablas: Relaciones
• Relación varios a varios:
– Cada registro de la tabla A puede estar relacionado con más de un registro de la tabla B
y cada registro de la tabla B puede estar relacionado con más de un registro de la tabla
A.

– En la base de datos del hospital tenemos dos tablas: médicos y pacientes, con una
relación directa entre ellos, un médico podría atender a muchos pacientes y un mismo
paciente podría ser atendido por varios médicos.
– Varios registros de la tabla de médicos se relacionaría con varios registros de la tabla de
pacientes.
– Relaciones de este tipo se almacenan creando una tabla especial donde se colocan los
identificadores de cada tabla y otros campos que puedan ser de utilidad, por ejemplo la
fecha, la hora, comentarios acerca de la visita médica, etc.
– En la tabla Visitas, donde aparecen tanto el código del médico como el del paciente.

167
Tablas: Relaciones
• Ejemplo de relación varios a varios:
– Tenemos la tabla “Pedidos" que contiene
campos "Producto" y "Cliente" y mantiene
la relación de uno a varios con las tablas
"Productos" y "Clientes" que a su vez
mantienen la relación de varios a varios
entre sí.

168
Tablas: Relaciones
• Crear relaciones ente dos tablas:
• Para crear una relación entre las tablas de una base de datos primero es
necesario cerrar todas las tablas. Con las tablas abiertas no se puede
crear o modificar una relación. Para poder utilizar la integridad
referencial será necesario que las tablas no tengan ningún registro.
• Desde la ventana Base de datos, se pulsa el botón o se selecciona el
menú Herramientas/Relaciones. Automáticamente se abrirá la ventana
Relaciones totalmente vacía.

169
Tablas: Relaciones
• Para añadir las tablas que van a estar relacionadas se pulsa el
botón Mostrar tabla o se selecciona el menú
Relaciones/Mostrar Tabla.
• Aparecerá una ventana con el listado de las tablas:

170
Tablas: Relaciones
• Se seleccionan aquellas tablas que van a formar
parte de una relación y se pulsa Agregar.
• Después de pulsar Agregar en la ventana Relaciones
aparecerá la tabla en un recuadro con todos los
campos.
• Cuando ya no se quieran agregar mas tablas se pulsa
el botón Cerrar.
• Quedará abierta únicamente la ventana Relaciones.

171
Tablas: Relaciones
• En este caso se van a incluir las tres tablas de nuestro ejemplo: Médicos,
Pacientes y Visitas.

• Para crear las relaciones entre estas tres tablas se relacionará primero
médicos con visitas y luego pacientes con visitas.

172
Tablas: Relaciones
• Para relacionar médicos con visitas el campo en común es el código del doctor.
• Este dato está almacenado en la tabla médicos, por tanto, el campo se arrastrará
desde médicos hasta Visitas.
• Para arrastrar el campo primero se selecciona, se hace clic, y sin soltar el botón
del ratón se arrastra hasta situar el cursor sobre el campo Código del doctor de la
tabla Visitas.
• Al arrastrar el campo el cursor se convertirá en un rectángulo pequeño.

• Tras arrastrar el campo se abrirá esta ventana:

173
Tablas: Relaciones
• Dentro de la ventana hay dos columnas en las dos debe estar un campo
con un contenido similar.
• No importa la coincidencia del nombre sino del contenido.
• Médicos es la tabla primaria en esta relación (es la que contiene los
datos) y Visitas es la tabla secundaria (tomará los datos de médicos a
través del campo común).
• Si se pulsa el botón Tipo de combinación, se abrirá una ventana
explicando los tres tipos de combinaciones.
• Automáticamente aparece seleccionada la primera combinación.
• En este ejemplo se puede dejar así.

174
Tablas: Relaciones
• Integridad referencial:
• La integridad referencial es un conjunto de
reglas de Access que garantizan que las
relaciones entre los registros de tablas
relacionadas son válidas y que no se eliminan
ni modifican accidentalmente datos
relacionados que satisfacen dicha relación.
• Sirve para aumentar la seguridad en el
tratamiento de los datos que coexisten entre
dos tablas relacionadas.

175
Tablas: Relaciones
• Exigir integridad referencial:

• La integridad referencial son unas normas que mantienen la coherencia de datos


entre dos tablas relacionadas. Estas normas son:
1. No puede haber registros en la tabla secundaria que no estén en la primaria.
2. No se puede borrar un registro de la tabla principal si hay registros en la secundaria.
• Para poder exigir integridad referencial en una relación de uno a varios es
necesario que :
– El campo relacionado de la tabla principal sea la clave principal.
– Los campos contengan el mismo tipo de datos a excepción de que la relación se
establezca entre un campo de tipo Autonumérico y un campo de tipo Numérico,
siempre y cuando este último sea un Entero largo (por lo tanto los dos campos con la
misma longitud: entero largo).

– No se pueden relacionar un campo de texto con uno de fecha, o uno numérico con
uno de texto.
– Ambas tablas deben pertenecer a la misma base de datos.

176
Tablas: Relaciones
• Cuando se establece la integridad referencial (marcando la casilla pertinente en
el panel de modificar relaciones) se van a cumplir obligatoriamente, las
siguientes reglas:
• No podemos introducir un valor para ese campo en la tabla relacionada si antes
no ha sido introducido en la tabla principal.
• Ejemplos:
– No podemos tener en la tabla de pedidos un pedido realizado por un código de cliente
que no exista.
– No podemos tener o anotar en la tabla de participantes un participante con un
número de socio que no exista en la tabla relacionada de socios (habría que dar de
alta al participante previamente en la tabla socios.
– Una buena opción sería colocar en el formulario de inscripciones un botón de
comando que nos lleve y abra el formulario de socios para poderle dar de alta.
– Al cerrar el formulario de socios una vez dado de alta, regresaríamos al formulario de
inscripciones y como ese nuevo socio ya existe en la tabla de socios, nos permitiría su
entrada).
– No podremos introducir tampoco a un empleado un código de entidad bancaria si no
se ha introducido esa entidad previamente en la tabla entidades.
– No se puede asignar a un trabajador un código de categoría si esa categoría no está
dada de alta en la tabla categorías.
– No se puede añadir un pedido en una tabla de pedidos de un artículo si el artículo no
existe previamente en la tabla de artículos.

177
Tablas: Relaciones
• No se puede eliminar un registro de una tabla principal si existen registros
coincidentes en la tabla relacionada.
• Ejemplos:
– No podemos eliminar un cliente que está en la tabla de pedidos, es decir está
realizando un pedido.
– No podemos eliminar un socio que está en la tabla de participaciones.
– No podremos eliminar una entidad bancaria mientras existe un empleado que
domicilie su nómina por ella, no podremos eliminar una categoría profesional de la
empresa mientras algún empleado la tenga asignada.
– No se podría borrar un artículo mientras existen pedidos de ese artículo en la tabla de
pedidos.
– No se podría dar de baja un vehículo (de una base de datos de un ayuntamiento)
mientras en la tabla relacionada multas existan multas sobre ese vehículo.
• No se puede cambiar un valor de clave principal en la tabla principal si el registro
tiene registros relacionados.
• Ejemplos:
– No podríamos cambiar el número de cliente en la tabla de clientes si este cliente en
este momento esta realizando un pedido, es decir está en la tabla pedidos.
– No podríamos cambiar el número de socio en la tabla de socios si este socio en este
momento esta participando en un torneo, es decir está en la tabla participaciones.

178
Tablas: Relaciones
• Si se quiere exigir el cumplimiento de estas reglas, hay que seleccionar la
casilla de verificación Exigir integridad referencial al crear la relación.

• Muy Importante: Esta opción es muy arriesgada ya que en Access una


vez que se elimina un registro ya no se puede volver a recuperar.
• Es fundamental llevar una buena política de copias de seguridad.

179
Tablas: Relaciones
• Access verificará que los campos cumplen todas las
condiciones para que haya integridad referencial.
• Si no se cumplen todas las condiciones no permitirá que esa
relación tenga integridad referencial.
• Quedan activadas las dos acciones siguientes:
– Actualizar en cascada los campos relacionados: se está indicando
que si se modifica el valor de un campo desde un lado de la relación
automáticamente se actualicen en todos los registros relacionados.
– Eliminar en cascada los registros relacionados: si se borra un registro
de un lado de la relación se borrarán automáticamente todos los
registros que estaban relacionados con él.

180
Tablas: Relaciones
• Al establecer la integridad referencial en la figura siguiente se observa
que la relación es uno (1) a varios (∞), un cliente (cuyos datos se
encuentran en la tabla Clientes) puede haber realizado varios pedidos
(los datos de éstos se encuentran en la tabla Pedidos).

181
Tablas: Relaciones
• Cuando ya se han especificado las características de la relación se pulsa el botón
Crear.
• Entre las dos tablas relacionadas aparecerá una línea.
• Esta línea simboliza la relación entre las dos tablas.
• Si la relación cumple la integridad referencial la línea será más gruesa.

• En nuestro ejemplo del hospital:

182
Tablas: Relaciones
• A continuación se creará la relación entre Pacientes y Visitas.
• Y se exigirá integridad referencial en las dos relaciones.
• Para exigir la integridad referencial se hace doble clic sobre
la línea de relación, se volverá abrir la ventana de la relación.

183
Tablas: Relaciones
• Una vez se ha terminado de crear las relaciones entre las tablas se
guardan.
• Para guardar se selecciona el botón guardar o el menú
Archivo/Guardar.
• Después de guardar ya se puede cerrar la ventana de relaciones.
• Si se cierra antes de guardar, se abrirá un mensaje de aviso.
• Access permite guardar las relaciones en la Base de Datos.
• Esto será muy importante para que siempre que se lleven a cabo
modificaciones en los datos se tenga en cuenta que las relaciones
están presentes entre los mismos y no se puedan infringir las
reglas de consistencia vigentes.

184
Tablas: Relaciones
• Modificar y eliminar relaciones:
• Ambas operaciones se realizan desde la Ventana de
relaciones, como ya se ha comentado anteriormente.
• Para modificar una relación los pasos a seguir son:
– Hacer clic sobre la línea de la relación que se quiere modificar, ésta
se visualizará con un trazo más grueso, indicando que está
seleccionada.
– Seleccionar la opción Modificar relación del menú Relaciones. Se
muestra el mismo cuadro de diálogo que aparecía al crear la
relación.
– Realizar las modificaciones necesarias.
– Hacer clic sobre el botón Aceptar.
• Para eliminar una relación, basta con seleccionar la relación
que se quiere eliminar y pulsar a continuación la tecla Supr
(o seleccionar la opción Eliminar del menú Edición).

185
Tablas: Ejemplos
• Ejemplo 1:
• Supongamos que en la federación de golf (ejemplo de la base de datos Socios
del Club) se ha asignado un responsable tutor por cada uno de los niveles de
juego de forma que a cada jugador le pasa a corresponder un responsable
deportivo en virtud de si su nivel de juego es principiante, medio o senior.
• Dicho tutor, tiene unos datos que lo identifican, tales como son su nombre,
apellidos, teléfono de contacto, fax, dirección de e-mail, dirección de oficina.
• Sería preciso que en el registro de cada socio se dispusiera de toda la
información de su tutor o responsable deportivo.
• Tras un análisis de la nueva situación, se deduce que si en la tabla socios
agregamos tantos campos como para albergar la información de dichos tutores,
a todos los socios con el mismo nivel de juego, les va a corresponder el mismo
tutor, con lo que todos los datos del tutor estarían repetidos de forma masiva y
redundante en la tabla socios (ocupando mucho espacio y lentificando el
proceso básicamente).
• Quizás la mejor solución sea, en este caso, definir otra tabla llamada Tutores, en
la que deberá existir un registro para cada nivel de juego y por lo tanto para cada
tutor.

186
Tablas: Ejemplos
• La estructura de la tabla sería la siguiente:

• Se introducirán los datos de los niveles junto a sus responsables.

• Pero, ¿De que manera podríamos enlazar o relacionar esta nueva


tabla de tutores con la gran tabla de socios?

187
Tablas: Ejemplos
• Será necesario relacionar el nivel de juego de cada socio de la tabla de
socios con en código de nivel de la tabla de tutores.
• Pero como son de distinto tipo (texto “en socios” frente a numérico “en
tutores”) no se podrá.
• La solución es sustituir en la tabla de socios el campo nivel por el campo
codnivel (por ejemplo) de tipo numérico y luego colocar a cada socio un
código (el que corresponde a su nivel de juego) en este campo de
acuerdo a los niveles y tutores introducidos en la tabla de tutores (1, 2 o
3).
• Se deberá crear en la tabla de socios el campo codnivel.
• Mediante tres consultas de actualización, a aquellos que tengan nivel de
juego principiante, actualizaremos ese nuevo campo codnivel (de la
tabla de socios) a 1.
• De igual manera, los socios con nivel senior actualizaremos a 2 su campo
codnivel.
• Y a 3 el campo codnivel de los socios con nivel senior.

188
Tablas: Ejemplos

1. A continuación deberemos (de forma recomendada, aunque en este


ejemplo no lo borremos) eliminar el campo nivel de la tabla socios ya
que, a partir de ahora, se conocerá el nivel de juego gracias a un código
en la tabla de socios, que se corresponderá con uno de los niveles y
tutores de la tabla tutores.
2. Ahora tendremos que establecer la relación (en la pantalla de
relaciones) de acuerdo a la siguiente pantalla:

189
Tablas: Ejemplos

• A partir de este momento, podríamos crear consultas,


formularios e informes en donde aparecen ambas tablas
implicadas, eso si, previamente relacionadas.

190
Tablas: Ejemplos
• Ejemplo 2:
• Supongamos un ejemplo superficial de gestión de sanciones
de tráfico en una localidad.
• Existen diferentes tipos de sanción (tipos de multa),
diferentes guardias o agentes, los vehículos, los cuales
pertenecen a un ciudadano o propietario, y por supuesto
sanciones.
• Las sanciones las "pone" un agente a un vehículo, un
determinado día, a una hora, en un lugar, y esa infracción es
de un determinado tipo de entre las que se pueden
sancionar.
• Un ciudadano puede tener mas de un vehículo.
• La información habrá que disgregarla en diferentes tablas,
(la de vehículos se supone que la facilita tráfico con todos los
vehículos), que deberán estar relacionadas.
191
Tablas: Ejemplos
• La siguiente imagen muestra un posible
planteamiento:

192
Tablas: Relaciones: Ejercicio 1: Hospital:
• La siguiente imagen muestra el resultado:

193
Tablas: Relaciones: Ejercicio 2: Empresa:
• La siguiente imagen muestra el resultado:

194
Ejercicio 3 de Relaciones de Tablas
• Ejemplo de una base de datos de una
Universidad.
• La base de datos va a tener cinco tablas:
“Alumnos”, “Asignaturas”, “Profesores”,
“Departamentos” y “Matrículas”.
• Tabla Alumno:
– Campos: DNI, Nombre, Apellido1, Apellido2,
Teléfono, Calle, Ciudad, Provincia, Fecha
Nacimiento, Estado Civil.
– Clave Principal: DNI
195
Ejercicio 3 de Relaciones de Tablas

• Tabla Asignatura:
– Campos: Código Asignatura, Nombre, Créditos, DNI, Curso,
Departamento.
– Clave Principal: Código Asignatura.

196
Ejercicio 3 de Relaciones de Tablas
• Tabla Profesores:
– Campos: DNI, Nombre, Apellido 1, Apellido 2, Fecha Nacimiento, Calle,
Ciudad, Provincia, Estado Civil, Código Departamento, Cargo.
– Clave Principal: DNI.

• Tabla Departamentos:
– Campos: Código Departamento, Nombre Departamento.
– Clave Principal: Código Departamento.

197
Ejercicio 3 de Relaciones de Tablas
• Tabla Matricula:
– Y sabiendo que un alumno se puede matricular de muchas
asignaturas y que una asignatura a su vez puede tener muchos
alumnos matriculados, y que un profesor puede impartir varias
asignaturas, y una asignatura puede ser impartida por varios
profesores, podemos definir esta tabla como:
– Campos: DNI Alumno, DNI Profesor, Código Asignatura, Curso
Académico, Nota.
– Clave Principal: DNI Alumno, DNI Profesor, Código Asignatura.

198
Ejercicio 3 de Relaciones de Tablas
• Introducción de datos:

199
Ejercicio 3 de Relaciones de Tablas
• Introducción de datos:

200
Ejercicio 3 de Relaciones de Tablas
• Creación de Relaciones:
– Seleccionamos la opción Relaciones de la barra de herramientas.
– Agregamos las 5 tablas de nuestra base de datos y establecemos las
relaciones entre ellas, de forma que el e
– esquema quede del siguiente modo:

201
Tablas: Propiedades de los campos
• Cada campo de una tabla dispone de una serie de
características que proporcionan un control
adicional sobre la forma de funcionar del campo.
• Las propiedades aparecen en la parte inferior
izquierda de la ventana Diseño de tabla cuando
tenemos un campo seleccionado.

202
Tablas: Propiedades de los campos
• Las propiedades se agrupan en dos fichas, la ficha General donde
indicamos las características generales del campo y la ficha
Búsqueda en la que podemos definir una lista de valores válidos
para el campo.
• Las propiedades de la ficha General pueden cambiar para un tipo
de dato u otro mientras que las propiedades de la ficha Búsqueda
cambian según el tipo de control asociado al campo.
• Hay que tener en cuenta que si se modifican las propiedades de
un campo después de haber introducido datos en él se pueden
perder estos datos introducidos.
• A continuación se explican las propiedades de que disponemos
según los diferentes tipos de datos.

203
Tablas: Tamaño del campo
• Para los campos Numérico, las opciones son:
– Byte: (equivalente a un carácter) para almacenar valores enteros entre 0 y
255.
– Entero: para valores enteros comprendidos entre -32.768 y 32.767.
– Entero largo: para valores enteros comprendidos entre -2.147.483.648 y
2.147.483.647.
– Simple: para la introducción de valores comprendidos entre -3,402823E38 y
-1,401298E-45 para valores negativos, y entre 1,401298E-45 y 3,402823E38
para valores positivos.
– Doble: para valores comprendidos entre -1,79769313486231E308 y -
4,94065645841247E-324 para valores negativos, y entre
1,79769313486231E308 y 4,94065645841247E-324 para valores positivos.
– Id. de réplica: se utiliza para claves autonuméricas en bases réplicas.
– Decimal: para almacenar números entre -10^28-1 y 10^28-1.

204
Tablas: Tamaño del campo
• Para los campos Texto, esta propiedad determina el
número máximo de caracteres que se pueden
introducir en el campo. Siendo por defecto de 50
caracteres y valor máximo de 255.
• Los campos Autonumérico son Entero largo.
• A los demás tipos de datos no se les puede
especificar tamaño.

205
Tablas: Formato del campo
• Esta propiedad se utiliza para personalizar la forma de
presentar los datos en pantalla o en un informe.
• Se puede establecer para todos los tipos de datos excepto el
Objeto OLE y Autonumérico.
• Para los campos Numérico y Moneda, las opciones son:
– Número general: presenta los números tal como fueron
introducidos.
– Moneda: presenta los valores introducidos con el separador de
millares y el símbolo monetario asignado en Windows como puede
ser €.
– Euro: utiliza el formato de moneda, con el símbolo del euro.
– Fijo: presenta los valores sin separador de millares.
– Estándar: presenta los valores con separador de millares.
– Porcentaje: multiplica el valor por 100 y añade el signo de porcentaje
(%).
– Científico: presenta el número con notación científica.

206
Tablas: Formato del campo
• Los campos Fecha/Hora tienen los siguientes formatos:
– Fecha general: si el valor es sólo una fecha, no se muestra ninguna hora; si el
valor es sólo una hora, no se muestra ninguna fecha. Este valor es una
combinación de los valores de Fecha corta y Hora larga. Ejemplos: 3/4/93,
05:34:00 PM y 3/4/93 05:34:00 PM.
– Fecha larga: se visualiza la fecha con el día de la semana y el mes completo.
Ejemplo: Lunes 21 de agosto de 2000.
– Fecha mediana: presenta el mes con los tres primeros caracteres. Ejemplo:
21-Ago-2000.
– Fecha corta: se presenta la fecha con dos dígitos para el día, mes y año.
Ejemplo: 01/08/00.
– El formato Fecha corta asume que las fechas comprendidas entre el 1/1/00 y
el 31/12/29 son fechas comprendidas entre los años 2000 y el 2029 y las
fechas comprendidas entre el 1/1/30 y el 31/12/99 pertenecen al intervalo
de años entre 1930 y 1999.
– Hora larga: presenta la hora con el formato normal. Ejemplo: 17:35:20.
– Hora mediana: presenta la hora con formato Pm o Am. Ejemplo: 5:35 Pm.
– Hora corta: presenta la hora sin los segundos. Ejemplo: 17:35.

207
Tablas: Formato del campo
• Formatos Número y Moneda:

• Formato Fecha/Hora:

208
Formularios
• La introducción de los datos directamente sobre las tablas es bastante
incómoda.
• No sólo no se pueden ver todos los campos sin desplazarse con la barra de
herramientas, sino que además los registros están uno encima de otro.
• Si se pierde la referencia del registro se pueden introducir datos que no
correspondan a ese registro.
• Los formularios permiten la introducción de datos en las tablas de una
forma más sencilla y más limpia.
• En vez de introducir los datos directamente sobre la tabla, los datos se
introducen en la tabla a través de los formularios.
• En una base de datos se puede crear más de un formulario basado en una
misma tabla.
• Un formulario puede tomar varios campos de una tabla o todos, incluso
puede tomar campos de diferentes tablas.
• Las tablas almacenan la información, los formularios se encargan de
recogerla.
• Para que las tablas puedan incluir los datos de los formularios deben estar
cerradas.
• Al cerrar o guardar los formularios, las tablas se actualizan.

209
Formularios: Crear un formulario
• Para crear un nuevo formulario se selecciona la pestaña de la
ventana de la base de datos.
• Se pulsa Nuevo, aparecerá la siguiente ventana:

• En esta ventana se dan siete posibilidades distintas para crear un


formulario.
• Crear el formulario manualmente en Vista diseño, con asistentes o con los
autoformularios.

210
Formularios: Crear un formulario
• Vista Diseño:
– Seleccionando esta opción se puede crear un formulario totalmente personalizado.
• Asistente para formularios:
– Access crea automáticamente un formulario con los campos que el usuario seleccione.
– Con este asistente se pueden crear formularios de formatos muy distintos.
• Autoformulario: columnas:
– Access crea un formulario en columnas con todos los campos de la tabla.
– Cada registro aparece de forma independiente con los campos ordenados en una columna.
• Autoformulario: tabular:
– Crea automáticamente un formulario con todos los campos en formato tabular.
– Los registros aparecen en filas y columnas.
– En este tipo de formulario se presentan todos los registros que se hayan introducido.
• Autoformulario: hoja de datos:
– Esta opción crea automáticamente un formulario con el formato de hoja de datos.
– Este es el mismo formato que el que tienen las tablas para introducir datos.
• Asistente para gráficos:
– Crea un formulario con un gráfico, muestra los datos en formato gráfico.
• Asistente para tablas dinámicas:
– Crea un formulario de Microsoft Access con una tabla dinámica de Microsoft Excel.
– Una tabla dinámica es una tabla interactiva que puede resumir grandes cantidades de datos
utilizando el formato y los métodos de cálculo que se elijan.

211
Formularios: Crear un formulario
• Para continuar con el ejemplo del hospital se va a crear un formulario de
la tabla pacientes.
• Se selecciona Autoformulario: columnas y la tabla Pacientes.
• Para seleccionar la tabla se pulsa

sobre la flecha de la derecha, se despliegan las diferentes tablas que


existen en la base de datos.
• Para seleccionar una se hace clic sobre ella.
• Si se quisiera extraer datos de varias tablas se tendría que seleccionar
Vista Diseño ó Asistente para formularios, o bien crear una consulta de
varias tablas y hacer un formulario con ella.

212
Formularios: Crear un formulario
• Al seleccionar la opción Autoformulario: columnas
Access automáticamente generará un formulario en
columnas y lo abrirá en Vista Formulario:

213
Formularios: Vista Diseño
• En Formulario hay tres vistas distintas, además de la
presentación preliminar.
• Vista diseño:
– Como su nombre indica en esta vista fundamentalmente
se varía el diseño del formulario.
– La ventana se compone de un menú y tres barras de
herramientas:

214
Formularios: Vista Diseño

215
Formularios: Vista Diseño
• La primera barra de herramientas se refiere al diseño de formularios.
• Puede aparecer integrada debajo del menú o de forma independiente tal como
aparece en el gráfico de debajo:

• El botón caja de herramientas sirve para abrir o cerrar el cuadro de herramientas.


• Y el botón autoformulario para crear un autoformulario cuando se desee.
• El resto de los elementos que componen la barra ya se han visto.
• La siguiente barra de herramientas se refiere al formato del formulario, es muy
parecido a la barra de herramientas de un editor de textos.

216
Formularios: Vista Diseño
• Objeto: dentro del marco aparecerá el objeto seleccionado. Si se pulsa la flecha de
la derecha aparecerán todos los objetos del formulario. Haciendo clic sobre
cualquiera de ellos el objeto se seleccionará y se le podrán aplicar todas las
características de formato que se quiera. Seleccionando a través de este menú los
objetos sólo se pueden seleccionar de uno en uno.
• Fuente: al pulsar la flecha de la derecha se despliegan los diferentes tipos de
fuentes que existen, y que se pueden aplicar a todos los objetos de un formulario.
• Tamaño: sirve para dar mayor número de puntos a una fuente, y de esta forma
aumentar el tamaño.
• Color del borde o de la línea: pulsando sobre este botón se despliega una paleta
de colores predeterminados. Al elegir cualquiera de ellos este color se aplicará al
objeto que esté seleccionado.
• Ancho del borde de la línea: hay seis grosores diferentes además del que viene
por defecto.
• Efecto especial: hay seis efectos especiales para aplicar al campo: sin relieve, con
relieve, bajo relieve, grabado, sombreado y cincelado.

217
Formularios: Vista Diseño
• En el cuadro de herramientas se encuentran todos los
elementos que componen el formulario, y se explicarán más
adelante.

218
Formularios: Vista Formulario
• Esta vista es para introducir los datos en el formulario.
• La barra de herramientas es la misma que la de Vista Hoja de datos, ya
que en ambas vistas se pueden introducir registros:

• Los elementos de la barra de herramientas son todos conocidos.


219
Formularios: Vista Hoja de Datos
• En esta vista se introducen datos como si se tratara de una hoja de cálculo.
• Esta vista es común con la Vista Hoja de datos de las tablas, la única
diferencia con respecto a las tablas es que en el formulario puede haber
campos de diferentes tablas.

• El formulario creado automáticamente no es muy claro.


• Las etiquetas de algunos campos no se ven completas, y los datos de los
diferentes campos se alinean en distintas posiciones.

220
Formularios: Vista Hoja de Datos
• Para mejorar la presentación se pulsa el botón Vista de la barra de herramientas, y se cambia a Vista Diseño, el aspecto del
formulario será este:

• Para modificar la posición, el tamaño y el aspecto en general de cada elemento primero es necesario saber qué es cada
elemento, como se mueven, modifican o añaden nuevos elementos.
• Los elementos que componen un formulario se llaman controles.
221
Formularios: Controles
• Estos son los diferentes tipos de controles:
Cuadro de texto Sirven para mostrar o introducir datos

Etiqueta Crea una etiqueta

Grupo de opciones Formado por un grupo de casillas de verificación o


botones de opción. Sólo permite que se active una
opción.
Botón de opción Para valores Si/No. Se puede utilizar dentro de un grupo
de opciones.
Casilla de verificación Para valores Si/No. Se puede utilizar dentro de un grupo
de opciones.
Botón de alternar Para valores Si/No. No puede utilizarse dentro de un
grupo de opciones.
Cuadro combinado Permite seleccionar un elemento de una lista o escribir
el dato directamente.
Cuadro de lista Permite seleccionar un elemento de una lista.

222
Formularios: Controles
Botón de comando Inserta un botón que al ser pulsado ejecuta
instrucciones.
Imagen Inserta un marco para incluir una imagen. No es un
objeto OLE. No se edita.
Marco de objeto Inserta un marco para incluir un objeto OLE que
depende del valor de un campo.
dependiente
Marco de objeto Inserta un marco para incluir un objeto OLE que no
depende del contenido de un campo.
independiente
Subformulario/subinfo Permite introducir un formulario dentro de otro.
rme
Salto de página Cuando el formulario tiene mas de una página, así se
indica dónde empieza cada una.
Línea Inserta una línea en el formulario.

Rectángulo Inserta un rectángulo.

223
Formularios: Controles

• En el cuadro de herramientas hay otros botones que


no son controles:
• Pulsando este botón se podrá seleccionar
cada uno de los objetos.
• Para utilizar el asistente de controles.
• Para ver más controles.

224
Formularios: Controles
• Manejo de controles:
• Hay controles que muestran información que sólo está en el formulario
(controles independientes) estos son las etiquetas, las líneas y los
rectángulos. Los cuadros de texto, los marcos de objeto muestran
información contenida en la tabla o consulta adyacente.
• Para realizar cualquier modificación en un control se hace clic sobre él.
• Para modificar el tamaño de la etiquetas y desplazar los campos se
selecciona la etiqueta:

225
Formularios: Controles
• Manejo de controles:
– Seleccionar:
• Para seleccionar varios campos se debe pulsar la tecla Mayúsculas o Control y sin
soltarla hacer clic sobre todos los elementos que se desee seleccionar.
• Si por equivocación se seleccionara uno que no se quisiera, sin soltar la tecla
Mayúsculas se debe volver a hacer clic para deseleccionar.
• También se puede seleccionar uno o varios elementos haciendo un cuadrado con el
ratón.
• Para realizar esta operación se hace clic sobre una de las esquinas de lo que va a ser
el cuadrado, se arrastra el ratón en diagonal sin soltar el botón, cuando ese
cuadrado abarque todo lo que se quiere seleccionar se suelta el botón del ratón.

226
Formularios: Controles
• Manejo de controles:
– Modificar el tamaño:
• Haciendo clic sobre los cuadraditos pequeños de las esquinas se modifica
el tamaño del objeto seleccionado.
• El ratón se convertirá en una flecha que apunta en dos direcciones y al
estirar hacia una de ellas variará el tamaño.
– Modificar la posición:
• Si se pulsa sobre la esquina superior izquierda el ratón se convertirá en
una mano con el dedo índice apuntando hacia arriba.

• Haciendo clic se podrá mover la etiqueta o el campo de forma


independiente. Sin embargo si pasa el ratón sobre cualquiera de los
bordes del campo o de la etiqueta el cursor será una mano abierta.
• Si se hace clic y se mueve se moverá tanto el campo como la etiqueta.

227
Formularios: Controles
• Manejo de controles:
– Alinear:
• Para alinear varios elementos primero hay que seleccionarlos y luego abrir
el menú Formato/Alinear y se desplegará un menú para seleccionar
respecto a qué lado se deben alinear esos campos.
• En vista diseño también se pueden añadir más elementos a la
presentación de formularios que se verán más adelante.
– Modificando el formulario con respecto a la creación automática del
programa, el aspecto del formulario será más claro:

228
Formularios
• Una vez creado este formulario, se puede introducir
todos los datos que se quiera.
• Para moverse entre los diferentes registros se utilizan
los botones que hay debajo del formulario:

229
Formularios: Asistente para
formularios
• Otra forma de generar un formulario es utilizando el
asistente para formularios.
• Tras pulsar Nuevo aparecerá esta ventana:

230
Formularios: Asistente para
formularios
• En este caso se selecciona Asistente para formularios.
• Después se selecciona la tabla de la que se van a extraer los
campos y se pulsa Aceptar.
• Aparecerá esta ventana:

231
Formularios: Asistente para
formularios
• En esta ventana se eligen los campos que se desea que aparezcan en el formulario.
• Aunque en la ventana anterior se ha seleccionado la tabla de la cual se quieren
extraer los campos para el formulario, aún se puede cambiar de tabla pulsando
sobre la flecha que se encuentra bajo Tablas/Consultas.
• Una vez seleccionada la tabla se escogen los campos que se quiere que aparezcan
en el formulario.
• Se pueden seleccionar todos los campos o sólo algunos.
• Incluso se pueden seleccionar campos de diferentes tablas para un mismo
formulario.
• Para seleccionar los campos del formulario se utilizan los botones que hay entre
Campos disponibles y Campos seleccionados:

Pasar un campo
Pasar todos los campos
Eliminar un campo
Eliminar todos los campos ya seleccionados
232
Formularios: Asistente para
formularios
• Para añadir un campo a la lista de Campos seleccionados:
primero se selecciona el campo con el ratón y después se
pulsa el botón .
• El campo aparecerá en la zona de la derecha: Campos
seleccionados.
• A su vez el campo desaparecerá de la lista de Campos
disponibles.

• Tras seleccionar todos los campos que se quiere que


aparezcan en el formulario se pulsa el botón Siguiente para
continuar con la creación del formulario.

233
Formularios: Asistente para
formularios
• Siempre se puede volver al paso anterior pulsando el botón Atrás para
volver y modificar alguna de las elecciones hechas.
• Si se pulsa el botón Cancelar se cancela la creación de un formulario sin
guardar lo que se ha hecho.
• Si se pulsa el botón Terminar el formulario quedará guardado hasta el
paso en el que se esté en ese momento.
• Tras pulsar Siguiente aparece esta pantalla, en la que se debe seleccionar
el tipo de distribución de los campos.

234
Formularios: Asistente para
formularios
• Al seleccionar cada opción aparece una muestra de cada
distribución en la ventana izquierda:

En columnas: cada columna Tabular: cada fila un registro.


tiene un campo y una etiqueta. En la primera fila las etiquetas.

235
Formularios: Asistente para
formularios
• Al seleccionar cada opción aparece una muestra de cada
distribución en la ventana izquierda:

Hoja de datos: es el mismo Justificado: los campos están


formato que el de las tablas. juntos respetando la longitud
de cada uno.
236
Formularios: Asistente para
formularios
• Tras elegir el tipo de distribución se pulsa Siguiente.

• En esta ventana se selecciona el aspecto gráfico del formulario.


• El color o la imagen de fondo.
• El color de las etiquetas y los botones.
• Se selecciona uno de los modelos de la lista y se pulsa Siguiente.
237
Formularios: Asistente para
formularios
• En esta ventana se le da nombre al formulario.
• Este es el último paso de creación del formulario, a partir de este
momento se pueden introducir datos a través del formulario.
• También cabe la opción de seguir modificando el diseño del formulario
desde la Vista diseño.

238
Formularios: Asistente para
formularios
• El formulario ya está creado, dependiendo de la
modificaciones personales tendrá un aspecto distinto, pero la
finalidad es la misma: introducir datos de una forma más
cómoda.
• Este podría ser el aspecto de un formulario retocado desde la
Vista diseño:

239
Formularios: Formulario con
subformulario
• Utilidad: Poder observar los datos de dos tablas que tienen algo en
común.
• Ejemplo: Cada paciente tiene asignado un médico de cabecera.
• De esta forma cada médico tiene una lista de los pacientes que le
corresponden.
• Con el subformulario será posible ver dentro del formulario de los médicos
la lista de los pacientes que le corresponde a cada médico.
• De forma que tras crear el formulario médicos, con todos los datos del
médico, se va a crear dentro del formulario, el subformulario.
• Para generar un subformulario de manera manual dentro de un formulario
primero se debe abrir el formulario principal en Vista diseño.
• Dentro del cuadro de herramientas se encuentra el botón
Subformulario/Subinforme .

• Se abre el formulario de Médicos con el que se va a trabajar, en modo


diseño.
• Y se hace clic sobre el botón subformulario: .

240
Formularios: Formulario con
subformulario
• Se crea un rectángulo con el ratón en la zona donde se quiera
situar el subformulario.
• Para crear el rectángulo se hace clic en lo que va a ser la
esquina superior izquierda y se desplaza el ratón en diagonal
hacia la esquina inferior derecha.
• Cuando el rectángulo tenga la forma deseada se suelta el
ratón.
• Dentro del rectángulo creado estará el subformulario.
• Tras crear el rectángulo aparece la siguiente ventana de
diálogo, donde se elige si el formulario se hace a partir de una
tabla o de un formulario ya existente.
• El diseño será mejor si se escoge un formulario, pero para eso
el formulario de pacientes tiene que estar ya creado.
• En este caso se selecciona Tabla o consulta.

241
Formularios: Formulario con
subformulario

• En la ventana siguiente se selecciona la tabla de Pacientes y


los campos que se quiere que formen parte del
subformulario.

242
Formularios: Formulario con
subformulario

• Se pulsa Siguiente.
243
Formularios: Formulario con
subformulario
• En esta ventana hay que determinar el tipo de conexión que existe entre el
formulario principal y el subformulario.
• El programa sugiere vínculos, si ninguno de ellos coincide con la relación real que
hay entre las dos tablas se selecciona Definir la mía propia, si alguno de los
vínculos coincide con la relación real. Se selecciona y se pulsa Siguiente.
• En este caso, la relación que sugiere el programa no coincide con la realidad.

244
Formularios: Formulario con
subformulario
• Los campos de las dos tablas que coinciden en su contenido son "Código
del médico" de la tabla médicos con el campo "médico de cabecera" de la
tabla pacientes.
• Para poder definir bien la relación se selecciona Definir la mía propia.
• El aspecto de la ventana variará:

245
Formularios: Formulario con
subformulario
• En Campos del formulario/informe se debe seleccionar el campo del formulario Médicos que
permite la relación con la otra tabla; Visitas.
• Y en Campos del subformulario/subinforme se debe seleccionar el campo que permite la
relación de la tabla Visitas con el formulario Médicos.
• Los campos que permiten la relación deben contener el mismo dato, no importa su nombre
si no los datos que contengan.
• Para seleccionar los campos campo del formulario y del subformulario se pulsa la flecha que
hay en el primer recuadro bajo Campos del...
• En la siguiente ventana se le da nombre al subformulario, ya que se almacenará junto con los
demás formularios.

246
Formularios: Formulario con
subformulario
• Tras realizar estos pasos el formulario de “Médicos” quedará
así en el Vista Diseño:

247
Formularios: Formulario con
subformulario
• En Vista Formulario se ve la utilidad del subformulario:

248
Formularios: Ejercicios:
• Ejercicio 1: Crear los formularios, con autoformulario
en columnas, para las tablas “Médicos”, “Pacientes”,
y “Visitas”, de la base de datos “Hospital”.
• Ejercicio 2: Crear los formularios, con autoformulario
en columnas, para las tablas “Clientes”, “Pedidos”,
“Detalles de Pedido”, “Compañía de Envíos”,
“Empleados” y “Productos”, de la base de datos
“Empresa”.
• Ejercicio 3: Crear los formularios, con autoformulario
en columnas, para las tablas “Discos”, “Clientes”,
“Empleados” “Pedidos” y “Desglose de pedidos”, de
la base de datos “Música”.

249
Formularios: Ejercicios:
• Solución del ejercicio 1:
• Para crear un autoformulario en columnas,
vamos al menú Nuevo/Autoformulario en
columnas, y elegimos la tabla “Médicos”.

250
Formularios: Ejercicios:
• El resultado es el siguiente:

• Finalmente, se guarda el formulario.


251
Formularios: Ejercicios:
• Ejercicio 4: Abrir la base de datos “Hospital”. Crear
un subformulario “Visitas”, dentro del de “Médicos”.
El campo en común de estas dos tablas es “Código
del Médico”.
• Ejercicio 5: Crear un subformulario “Pacientes”,
dentro del de “Visitas”. El campo en común de estas
dos tablas es “Código del Paciente”.
• Ejercicio 6: Abrir la base de datos “Empresa”. Crear
un subformulario “Pedidos”, dentro del de “Clientes”.
El campo en común de estas dos tablas es
“Id_Cliente”.
• Ejercicio 7: Crear un subformulario “Productos”,
dentro del de “Detalles de Pedido”. El campo en
común de estas dos tablas es “Id_Producto”.
252
Formularios: Ejercicios:
• Ejercicio 8: Crear un subformulario “Pedidos”, dentro del de
“Empleados”. El campo en común de estas dos tablas es
“Id_Empleado”.
• Ejercicio 9: Abrir la base de datos “Música”. Crear un
subformulario “Pedidos”, dentro del de “Clientes”. El campo
en común de estas dos tablas es “NIF_Cliente”.
• Ejercicio 10: Crear un subformulario “Pedidos”, dentro del de
“Empleados”. El campo en común de estas dos tablas es
“NIF_Empleado”.
• Ejercicio 11: Crear un subformulario “Discos”, dentro del de
“Desglose de Pedido”. El campo en común de estas dos tablas
es “Id_Disco”.
• Ejercicio 12: Crear un subformulario “Desglose Pedidos”,
dentro del de “Pedidos”. El campo en común de estas dos
tablas es “Id_Pedido”.

253
Formularios: Ejercicios:
• Solución del ejercicio 4:
• Para crear un subformulario “Visitas”, dentro
del de “Médicos”, hay que abrir este último en
vista diseño, y hacer clic en el comando:

254
Formularios: Ejercicios:
• Aparece el asistente de subformularios.
• Se puede hacer de dos formas.
• La primera consiste en hacer los subformularios desde una
tabla o consulta existente.

255
Formularios: Ejercicios:
• En la siguiente ventana, se elige la tabla “Visitas”, y se insertan
todos los campos de esta tabla.

256
Formularios: Ejercicios:
• En la siguiente ventana, elegimos la segunda opción “Definir
la mía propia”, y seleccionamos el campo que tienen en
común las dos tablas, en este caso “Código del Médico”.

257
Formularios: Ejercicios:
• En la última ventana, escribimos el nombre del subformulario
que se va a crear “Subformulario Visitas”.

• Hacemos clic en Finalizar.

258
Formularios: Ejercicios:
• El resultado es el siguiente:

259
Formularios: Ejercicios:
• Como podemos observar, al hacer el subformulario usando la
tabla “Visitas”, aparece un “Subformulario Visitas” en la
ventana de la base de datos.

260
Formularios: Ejercicios:
• Esto no sucede al utilizar la segunda forma, que consiste en crear un
subformulario utilizando un formulario existente.
• Hacemos clic en el mismo comando que antes, y aparece el asistente.
• En esta ocasión, señalamos la segunda opción, y elegimos el formulario
“Visitas”.

261
Formularios: Ejercicios:
• En la siguiente ventana, señalamos la opción “Definir la mía propia”, al
igual que en el caso anterior, y de nuevo elegimos el campo que tienen en
común, “Código del Médico”.

262
Formularios: Ejercicios:
• Aparece la siguiente ventana, en la que se elige el nombre del
subformulario: “Visitas”.

• Por último, hacemos clic en Finalizar.

263
Formularios: Ejercicios:
• Como se puede observar, el resultado es diferente al obtenido en el caso
anterior.

264
Formularios: Asistente para tablas
dinámicas
• Crea un formulario de Microsoft Access con una tabla dinámica de
Microsoft Excel.
• Una tabla dinámica es una tabla interactiva que puede resumir grandes
cantidades de datos utilizando el formato y los métodos de cálculo que se
elijan.
• Para continuar con el ejemplo del hospital se va a crear un formulario de
la tabla pacientes.
• Se selecciona Autoformulario: columnas y la tabla Pacientes.
• Para seleccionar la tabla se pulsa .

sobre la flecha de la derecha, se despliegan las diferentes tablas que


existen en la base de datos.
• Para seleccionar una se hace clic sobre ella.
• Si se quisiera extraer datos de varias tablas se tendría que seleccionar
Vista Diseño ó Asistente para formularios, o bien crear una consulta de
varias tablas y hacer un formulario con ella.

265
265
Formularios: Asistente para tablas
dinámicas
• Aparece el siguiente menú:

• Pinchamos en Aceptar, y aparece:

266
Formularios: Asistente para tablas
dinámicas
• Hacemos clic en siguiente:

• Hacemos clic en finalizar.

267
Formularios: Asistente para tablas
dinámicas
• Aparecen el siguiente menú, que nos permite ir arrastrando los campos
que deseamos que entren dentro de la tabla dinámica.
• Además, también nos permite dentro de cada campo introducido,
seleccionar los registros que deseemos.
• Como vemos, son muy útiles ya que nos permiten, muy fácilmente,
realizar consultas dinámicas.

268
Formularios con gráficos
• Vamos a crear un formulario con un gráfico
que nos muestre en columnas los salarios de
los médicos de la base de datos “Hospital”.
• Para ello, nos vamos a los formulario y
hacemos clic en Nuevo/Asistente para
gráficos.
• Después seleccionamos la tabla “Médicos”.

269
Formularios con gráficos
• Aparece la siguiente ventana:

• Seleccionamos los campos Código del médico


y Salario y hacéis clic en Siguiente.
270
Formularios con gráficos
• Aparece la siguiente ventana:

• Seleccionamos cualquiera de los dos primeros que


os aparecen en la ventana (de columnas) y hacéis clic
en Siguiente.
271
Formularios con gráficos
• Aparece la siguiente ventana:

• Hacemos clic en Siguiente.


272
Formularios con gráficos
• Aparece la siguiente ventana:

• Nos pide el título que queremos darle a gráfico.


• Escribimos: Salario de los médicos.
• Hacemos clic en Siguiente.
273
Formularios con gráficos
• Nos aparece el formulario con el gráfico:

• Finalmente guardamos el formulario con el nombre:


“Gráfico del Salario de los Médicos”.

274
Formularios con botones
• Para crear un formulario con botones,
debemos crear un nuevo formulario en vista
diseño:

275
Formularios con botones
• Aparece la siguiente ventana:

• Ahora, vamos a introducir en este formulario un


botón que nos dé la bienvenida a nuestra base de
datos del hospital.

276
Formularios con botones
• Para ello, hacemos clic sobre el botón , que está dentro de las herramientas de
los formularios:

• Ahora, nos vamos de nuevo al formulario y dibujamos el botón.

• Nos aparece el siguiente asistente.


• Hacemos clic en cancelar.

277
Formularios con botones
• Cambiamos el nombre del botón: “Bienvenido al hospital”.
• Hacemos clic con el botón derecho del ratón, y vamos a “propiedades”.
• Donde pone “Otras”, en “Nombre” ponemos “Bienvenida”.
• Hacemos clic con el botón derecho del ratón sobre el botón, y luego en
generar evento:

278
Formularios con botones
• Aparece la siguiente ventana de Visual Basic.

279
Formularios con botones
• Escribid el siguiente código:

Private Sub Bienvenida_Click()


MsgBox Prompt:="Bienvenido a nuestro hospital", Buttons:=vbOKOnly +
vbInformation
End Sub

280
Formularios con botones
• Guardad el formulario con el nombre “Bienvenida al hospital”.
• Ejecutad el formulario, y observad que, efectivamente, sale el mensaje:
“Bienvenido a nuestro hospital”.

• Ahora vamos a crear dentro de ese mismo formulario otros tres botones
que nos abran los formularios de “Médicos”, “Pacientes” y “Visitas”.
• Para ello, volvemos a poner el formulario en “Vista Diseño”.

281
Formularios con botones
• Creamos otro botón debajo del que previamente habíamos creado.
• Directamente sale el asistente. Esta vez no le cerramos, ya que hay una
opción que nos permite abrir formularios.

• Hacemos clic en Operaciones con formularios/Abrir formulario.


282
Formularios con botones
• Elegimos el formulario que queremos abrir, por
ejemplo, “Médicos”, y hacemos clic en siguiente.

283
Formularios con botones
• Seleccionamos la pestaña que dice “Abrir el
formulario y mostrar todos los registros”.
• Hacemos clic en Siguiente.

284
Formularios con botones
• La siguiente ventana nos permite insertar un icono o
texto para mostrar la acción que lleva a cabo nuestro
botón.
• Hay dos opciones:

285
Formularios con botones
• Elegimos la segunda opción (la que muestra el icono
del formulario), y hacemos clic en siguiente.
• Aparece la siguiente ventana, en la que escribimos el
nombre del botón, en este caso “Médicos”.

286
Formularios con botones

• Hacemos lo mismo para los formularios “Pacientes” y


“Visitas”.
• Ahora queremos crear botones que nos abran las
tablas de “Médicos”, “Pacientes” y “Visitas”.
• Para ello, nos vamos de nuevo al formulario en vista
diseño, y agregamos un nuevo botón debajo de los
ya existentes.
• Una vez creado nos vamos al botón derecho y a
generador de eventos.

287
Formularios con botones
• Aparece la siguiente ventana:

• Hacemos clic en generador de macros.


• Nos pide un nombre para guardar la macro. Nosotros escribimos: “Abrir
tabla Médicos”.

288
Formularios con botones
• Aparece la siguiente ventana:

• En acción elegimos la acción que queremos que lleve a cabo el botón, en este caso
“Abrir tabla”, y en nombre de la tabla elegimos “Médicos”.
• Finalmente, le cambiamos el nombre al comando.
• Hacemos lo mismo con las otras dos tablas: “Pacientes”, y “Visitas”.

289
Formularios con botones
• El resultado es el siguiente:

290
BIBLIOGRAFIA
Kendall y Kendall, Análisis y Diseño de Sistemas,
Prentice Hall.

James A. Senn, Análisis y Diseño de Sistemas de


Información, McGraw-Hill.

Deitel, Harvey M. / Deitel, Paul J (1995). Cómo


programar en C/C++ (2ª edición), Prentice Hall.

291

Você também pode gostar