lunes, 12 de mayo de 2008

Desarrollo C4 (Ejemplos)

EJEMPLO 1
En el ejemplo que se te presenta a continuación se aprecian varias relaciones así como los datos que se incluye en cada una de ellas.
Analiza con mucho detenimiento.


EJERCICIO 1

Instrucciones: Contesta los cuestionamientos que a continuación se te presentan.Comparte tus respuestas ante el resto del grupo.

1. ¿Cuántas relaciones existen en la base de datos y cuáles son?
R= 2
· Oficina_Numero(Oficinas)-Oficina_Numero(Personal)
· Poblacion(Oficinas)-Poblacion(Personal)

2. ¿Qué atributos tiene la relación Oficinas?
R= Oficina_Numero, Calle, Colonia, Poblacion, Estado y Telefono.

3. ¿Qué atributos tiene la relación Personal?
R=CLave, Nombre, Apellido, Direccion,Poblacion, Puesto, Salario, CURP y Oficina_Numero.

4. ¿Qué atributos permite que compartan información las relaciones?
R= Oficina_Numero y Poblacion.

5. ¿Qué atributos funcionarían como llaves primarias?
R= · Oficina-->Oficina_Numero
· Personal-->Clave

EJERCICIO 2

Instrucciones: A partir de los casos presentados tanto en el ejercicio 2 como en el ejercicio 9 de la competencia anterior (3) genera dos bases de datos bajo el modelo relacional.
Comparte tu trabajo ante el resto del grupo.

EJEMPLO 2
A partir de la información que se incluyó en la base de datos del ejemplo 1 en esta misma competencia, planteamos algunas preguntas y su respuesta mediante consultas elaboradas en SQL.

1. ¿Cuáles son los trabajadores que laboran en la oficina 01?
SELECT Nombre
FROM Personal
WHERE Of_num = 01

Interpretando cada sentencia de ese consulta:

SELECT Nombre
Mostrará todos los datos que aparezcan en la columna nombre.

FROM Personal
Los datos de la columna nombre que está en la relación llamada Personal.

WHERE Of_num = 01 para poder ser mostrado un nombre debe tener en la columna Of_num el número 01.

Finalmente, el resultado de esta consulta será:
Nombre
Artemio
Sonia
Flor

2. ¿Cuáles son los trabajadores que tienen un salario menor a $15,000?

SELECT Nombre
FROM Personal
WHERE Salario < 15,000

Interpretando cada sentencia de ese consulta:

SELECT Nombre
Mostrará todos los datos que aparezcan en la columna nombre.

FROM Personal
Los datos de la columna nombre que está en la relación llamada Personal.

WHERE Salario < 15,000 indica que la condición para que se muestre el nombre del trabajador es que el valor que tiene en Salario sea menor a 15,000.

Finalmente, el resultado de esta consulta será:
Nombre
Ilych
Sergio
Artemio
Víctor
Javier
Miguel
Flor
Héctor
Ricardo
Rodrigo

3. ¿Cuáles son los trabajadores que trabajan en la oficina de Mérida?
SELECT Nombre
FROM personal
WHERE Of_num IN (SELECT Of_numFROM OficinasWHERE Población= 'Mérida')

Interpretando cada sentencia de ese consulta:

SELECT Nombre
Mostrará todos los datos que aparezcan en la columna nombre.

FROM personal
Los datos de la columna nombre que está en la relación llamada Personal.

WHERE Of_num IN aquí se crea lo que conoce como consulta anidada, es decir, lo que aparece en Of_num, tiene que pasar antes por una condición para ser seleccionado. Dicha condición se especifica en la consulta que se encuentra en el paréntesis que dice a grandes rasgos, seleccionar el of_num de la tabla oficinas donde población sea igual a Mérida.

(SELECT Of_num
FROM Oficinas
WHERE Población= 'Mérida')

Finalmente, el resultado de esta consulta será:
Nombre
Víctor

EJEMPLO 3
Observemos de nueva cuenta el ejemplo 1 de esta competencia. Si planteamos las tablas y sus atributos, podríamos ver algo similar a lo siguiente.

Podemos observar que las tablas comparten un atributo en común denominadoof_num, que en realidad sirve como el enlace o relación entre las dos tablas. Ademásla llave primaria para la tabla oficinas es of_num, mientras que para personal es
Clave.

En resumen y para saber mas (access)

Diseño de una base de datos

Consiste en:

- Distribuir la información en diferentes tablas

- Establecer los camposy sus propiedades, para cada tabla.

- Crear las relaciones entre las diferentes tablas.

Método de diseño:

1º) Estudiar toda la información que interesa gestionar

2º) Distribuir la información en diferentes “temas”:tablas de la B.D.

3º) Establecer las claves externas: campos de conexión entre tablas.

4º) Establecer las claves principales: campo o campos que caracterizan univocamente a cada registro de una tabla.

5º) Crear las Relaciones entre las tablas.

Ejemplo:

Facturación de una empresa

1º)Información
- Datos del cliente
- Datos de los artículos a facturar
- Datos de los diferentes pedidos

2º)Tblas:
- Clientes
- Artículos
- Pedidos

3º)Claves Externas

Clientes>>>>Pedidos<<<
En cada pedido necesitamos un campo (clave externa) para conectar con clientes(el cliente que nos hace el pedido) y otro campo para conectar con Artículos(el artículo que se sirve).

4º)Relaciones
Clientes>>>>Pedidos<<<
Tabla Una tabla es un lugar donde se almacenan datos sobre un determinadotema como,por ejemplo,fotografías o idiomas.

Cada registrode una tabla contiene información sobre algo específico como por ejemplo, sobre una fotografía.

Los registros de una tabla están formados por campos, como el número de foto, si es en color o no, etc.

En una base de datos puede haber muchas tablas, cada una de las cuales almacena información sobre un tema distinto. Cada tabla puede contener datos de muchos tipos, incluyendo texto, números,fechas,imágenes, etc.

Características de un campo

- Nombre del campo

Puede tener 64 caracteres como máximo (letras, números y espacios en blanco).

Es conveniente que sea un nombre descriptivo del campo, que sea corto y que no tenga espacios en blanco,ya que en caso contrario su uso se hace difícil cuando tengamos de utilizar dicho nombre en una expresión.

- Tipo de datos del campo

Texto:caracteres alfanuméricos

Numérico: números (enteros, decimales, etc).

Fecha/Hora:fechasy horas

Autonumérico: valor numérico que el “Microsoft Access” incrementa de forma automática para cada registro que agregamos.

Moneda:valores de moneda.

Sí/No:dos opciones (verdadero ofalso)

Objeto OLE:gráficosu otros objetosbinarios

Hipervínculo: texto de una dirección de hipervínculo, como páginas web.

- Descripción del campo
Para que las tablas sean más fáciles de entender y actualizar, podemos incluir una descripción para campo de la tabla.

Cuando estemos introduciendo datos en un campo que tiene descripción, ésta aparece en la barra de estado (última línea de la pantalla).

- Propiedades:

Tamaño del campo:ajusta el tamaño de un campo tipo texto o limita el rango de valores permitidos enun campo tiponumérico.

Formato: presenta fechas ynúmeros enun formato determinado, como “fecha larga” o “moneda”.

Lugar decimales: presenta un cierto número de posiciones después del separador decimal, cuando se utiliza unformatopara un campo de tiponumérico o moneda.

Máscara de entrada: presenta caracteres de formato en el campo para que no sea necesario escribirlos.

Los que hemos utilizado:99.999.999(&)y (99) 999-99-99

El "9" indica un dígito o espacio (introducción no obligatoria).

El "&" indica cualquier carácter o espacio (introducción obligatoria)

Si quieresprofundizar en las diferentesposibilidades de la “máscara de entrada”, sitúa el cursor en el campo "Máscara de entrada" y pulsa la tecla [F1], de sta forma accederás a la ayuda correspondiente

Disponemos también de un asistente para máscaras de entrada: basta situar el cursor en el campo “Máscara de entrada” yhacer clic en el icono […] que aparece a la derecha del campo.

Título: especifica una etiqueta distinta de la predeterminada (el nombre del campo).

Valor predeterminado: rellena automáticamente el campo con el valor que indicamos

Regla de validación: limita los datos introducidos en el campo a los valores que cumplen un requisito determinado.

La que hemos utilizado: “Barcelona" Or "Valencia" Or "Granada" Es decir, sólo podemos escribir una de las tres ciudades indicadas. Para estudiar las diferentes posibilidades, sitúa el cursor en el campo "Regla de validación" y pulsa [F1], de esta forma accederás a la ayuda de dicha opción.

Texto de Validación: es el texto que aparecerá en una ventana de error, al no cumplirse la “regla de validación”.

Requerido: exige la introducción de datos en el campo.

Permitir Longitud cero: permite no escribir nada en el campo (si es de “texto” o “memo”).

Indexado: permite acelerar las búsquedas en dicho campo. Es conveniente “indexar” los campos en los que “buscamos con más frecuencia”y/o “cambiamos la ordenación más a menudo”.

Relaciones

La principal característica de una base de datos relacional, como el Access, es la posibilidad de establecer relación entre tablas.

La finalidad de las relaciones es fundamentalmente el evitar información duplicada y mejorar la gestión de la base de datos.

Tipos de relaciones (lasmás usuales)

- Realación uno a varios

Es la más importante (y única que hemos utilizado de momento): cada registro de la tabla principal puede asociarse a varios registros de la tabla relacionada (cada valor de clave principal puede aparecer varias veces en la tabla relacionada).

- Relación uno a uno

En una relación “uno a uno”, cada registro de la tabla principal sólo puede asociarse a un registro de la tabla relacionada. En muchos casos, los campos coincidentes de ambos extremos de la relación son una clave principal o disponen de un índice único.

Integridad Referencial

En ambos casos podemos “Exigir Integridad Referencial” La integridad referncial ayuda a garantizar que las relaciones entre los registros son válidas y que no se eliminarán accidentalmente datos relacionados. Podemos exigir integridad referencial cuando se cumplen las siguientes condiciones:

- El campo coincidente de la tabla principal es un campo principal o tiene un índice único.

- Los campos relacionados tienen asignado el mismo tipo de datos.

Al exigir integridad referencial hemos de tener en cuenta:

- Cuando agregamos un registro a una tabla relacionada y especificamos un valor en algún campo coincidente, debe existir con anterioridad un registro que incluya este valor en la tabla principal.

- No es posible eliminar un registro de una tabla principal si en una tabla relacionada existen registros coincidentes.

Volveremos a referirnos a las relaciones, concretamente al llamado “Tipo de combinación” de una relación, en el capítulo correspondiente a las consultas.

Procedimientos

Crear una Base de Datos

- Si acabamos de “cargar” el Access:
En la Pantalla Inicial del programa:
Clic en la opción
Clic en [Aceptar]

- Si tenemos el Access en “memoria”porque estamos trabajando con otra base de datos:
“Cerrar” la base de datos que tenemos en memoria
Clic en el icono nuevo:
Clic en [Aceptar]

En ambos casos, aparece el cuadro de diálogo para grabar la nueva base de datos (a diferencia de la mayoría de programas en los que grabamos el trabajo,una vez que hemos terminado).

* En el campo "Guardar en",hemos de situarnos en la carpeta donde deseamos grabar la base de datos.

* En el campo "Nombre de archivo",hemos de escribir el nombre de nuestra B.D.

* Por último clic en [Crear]

Crear una tabla Podemos hacerlo de dos formas:

1) Con el Objeto:Tablas seleccionado,haz clic en [Nuevo]:

Selecciona la opción "Vista Diseño" y clic en [Aceptar]

2) Con el Objeto:Tablas seleccionado,haz clic en la opción "Crear una tabla en vista diseño"

En ambos casos aparece la “Pantalla de Diseño” de la nueva tabla en blanco

Panel Superior: Cada fila = un campo:
Nombre del campo – Tipo de campo – Descripción del campo
Para acceder a las “propiedades” del campo (panel inferior) pulsa [F6]

Panel Inferior:
Propiedades del campo (depende del tipo de campo)
Para volver al panel superior,pulsa [F6]

Cuando ya están introducidos todos los datos de los campos: nombre, tipo, descripción y propiedades, hemos de establecer la Clave
Principal:

- Sitúa el cursor de escritura en el campo (fila) correspondiente.

- Clic en el icono "Clave Principal":

El siguiente y último paso es grabar la tabla:
* Clic en el icono "Guardar":

* Aparece una ventana que nos permite escribir el nombre que deseamos dar a la tabla.

Por último, “cerramos” la ventana para volver a la pantalla principal de la B.D. Crear una tabla utilizando el Asistente:

- Con el Objeto:Tablas seleccionado, clic-clic en la opción:"Crear una tabla utilizando el asistente"

- Hay dos tipos:Negocios o Personal y una larga lista de tablas de ejemplo para los dos tipos.

- Para cada tabla de ejemplo tenemos una larga lista de campos de ejemplo.

- Para seleccionar todos los campos de una tabla, basta pulsar el icono [>>]

- Para colocar un campo concreto, hemos de tenerlo seleccionadoy pulsar [>].

- Si hacemos algún error podemos volver a comenzar (botón [<<]) o eliminar un campo concreto (botón [<])

- El asistente ya asigna una clave principal.

- En el caso de que no sea la primera tabla de la base de datos, el asistente nos guia para establecer las “relaciones”.

- Al acabar es conveniente escoger la opción "Modificar el diseño de la tabla", para visualizar la estructura de la tabla y si lo consideramos conveniente podemos modificar algunas características.

- Desde la pantalla principal de la B.D., clic en el icono "Realaciones"

- Aparece una ventana de nombre "Mostrar tabla" que nos permite colocar las tablas (o consultas) en la ventana de relaciones:

* Seleccionamos la tabla y clic en [Agregar]

* Para acabar, clic en [Cerrar]

- Si ya existe alguna relación en la “Pantalla de Relaciones”,no aparece la ventana "Mostrar Tabla";para que aparezca hemos de hacer clic en el icono "Mostrar Tabla"

- Una vez colocadas las tablas en la ventana de relaciones, para establecer una relación:

* Seleccionamos el campo de la tabla principal y sin dejar de pulsar el botón izquierdo del ratón, “arrastramos” el campo hasta situarlo en el campo correspondiente de la tabla relacionada.

* En este instante aparece la ventana que nos permite modificar el tipo de relación, con la posibilidad de "Exigir Integridad Referencial".

- Una vez establecida una relación podemos modificarla:

* Seleccionamos la línea de conexión de la relación.

* Pulsamos el botón derecho del ratón para que aparezca el “menú contextual”.

* Escogemos la opción "Modificar relación..."

- Cuando hemos acabado de trabajar en la “Pantalla de Relaciones”,hemos de grabar los cambios:como siempre, clic en el icono "Guardar". .

Inseratr hojas secundarias de datos

Desde la “Pantalla Hoja de Datos” de una tabla podemos visualizar los datos relacionados de otras tablas…

- Desde la “Pantalla Hoja de Datos” de una tabla: Menú Insertar Hoja secundaria de datos…

- Aparece una ventana donde hemos de seleccionar la tabla cuyos datos vinculados deseamos visualizar y los campos relacionados.

- En la “Pantalla Hoja de Datos” de la tabla aparece una nueva columna (1ª columna de la tabla) con el signo “+” an cada registro.

- Si pulsamos en el signo “+” de un registro determinado, aparecerán los datos relacionados de dicho registro. - Para volver a la situación inicial deberemos pulsar en el signo “-“

- Si queremos “conservar” la Hoja secundaria de Datos, deberemos grabar (como siempre) desde la “Pantalla Hoja de Datos”.

Insertar una tabla como cuadro combinado de otra

1ª Posibilidad

- Desde la “Pantalla de Diseño de la tabla 1” y el cursor en el campo relacionado con la Tabla 2.

- Selecciona la Solapa:Búsqueda en el Panel de Propiedades:

- Sitúa el cursor en el único campo que aparece (clic en “Cuadro de Texto”),y escribe o selecciona "Cuadro Combinado".

- Rellena los campos que aparecen de la siguiente forma:
Tipo de origen de la fila: Tabla/Consulta
Origen de la fila: Tabla 2
Columna dependiente: 1 Número de columnas: 2
Encabezados de columnas: No
Ancho de columna: 0cm;3cm
Filas de lista: 8
Ancho de la lista: Auto
Limitar a la lista: Sí

2ª Posibilidad

- Desde la “Pantalla de Diseño de la Tabla 1”, añade un nuevo campo con…

- Nombre del campo: escribe elnombre que quieras.

- Tipo de datos: escoge la opción:

En este momento se activa el “asistente” que nos hace una serie de preguntas:

* Quiero que la columna de búsqueda busque los valores en una tabla o consulta

* Tabla: Tabla 2

* Clic en [>>] para incluir todos los campos.

* Etc.

Introducción de Registros

Desde la “Pantalla Hoja de Datos” de una tabla:

- Cuando comenzamos a introducir un registro, aparece un pequeño lápiz a la izquierda del registro fila que estamos rellenando), que desaparece al acabar de rellenar el registro.

- Para “saltar” al campo siguiente: pulsa las teclas [Return] o [Tab]

- En un campo "Autonumérico", no hemos de escribir nada, simplemente pulsar [Return] o [Tab]

- En un campo determinado, si deseamos el mismo valor que en el registro anterior, basta que pulses [CTRL][Apóstrofe]

- Si el campo es un cuadro combinado:
Una forma:
Clic en la flecha del cuadro combinado.
Clic en la opción deseada del cuadro
Pulsa [Tab]

Otra Forma:
Al pulsar la tecla [F4] se “abre” el cuadro combinado
Con la tecla del cursor abajo, seleccionamos el valor deseado
Pulsa [Tab]

Otra forma:
Al escribir las primeras letras, aparece elvalor en el cuadro combinado
Pulsa [Tab] para validar el valor y saltar al campo siguiente.

- Si el campo es OLE,para introducir un valor hemos de proceder de la siguiente forma:
* Situado el cursor en el campo OLE
* Menú Insertar Objeto…
* “Crear desde archivo”
* Clic en [Examinar…]
* Localiza el objeto a insertar
* [Aceptar][Aceptar]
* [Tab] para validar, ypasar al siguiente campo.
- Podemos introducir/visualizar registros desde otra pantalla:
* Desde la “Pantalla Hoja de Datos” de una tabla.
* Clic en Autoformulario
* En el caso de un “campo OLE”, sólo se visualiza en el autoformulario
* Si la tabla contenía una “Hoja secundaria de datos”, aparece automáticamente en el autoformulario en forma de Subformulario