SGBD_SQL Consultas

Páginas: 5 (1005 palabras) Publicado: 25 de octubre de 2015
SGBD y SQL
Access SQL: DDL y DML

Ejercicio

Una empresa de Ingeniería precisa una
base de datos para la gestión de sus
proyectos.

Necesita almacenar información acerca
de sus empleados y los proyectos en los
que trabaja.

1

Ejercicio
Sobre los Proyectos:
Número de proyecto
DNI de la persona que lo dirige
Cliente
Fecha de inicio

Ejercicio
Sobre los Empleados:
DNI
Apellidos y nombre
Cargo quedesempeña en la empresa
Fecha de nacimiento
Tiempo en horas dedicado por cada empleado a
cada uno de los proyectos en que participa.

2

Ejercicio
Se deberá tener en cuenta que:
Un empleado puede estar asignado a varios
proyectos
En un proyecto trabajan varios empleados
Un proyecto solo tiene un director, que tiene
que ser Jefe de Proyecto

Diagrama Entidad-Relación

Horas
DNI

Número

NombreEmpleado

F.Nacimiento

Cargo

Trabaja

DNI Dir

Proyecto

Cliente

F.Inicio

3

Modelo Relacional
Tabla Empleados
DNI Nombre Puesto FNacimiento

Clave Primaria

Modelo Relacional
Tabla Proyectos
Proyecto DNI_Director Cliente Inicio

Clave Primaria

4

Modelo Relacional
Tabla Tiempos
DNI Proyecto Tiempo

¿Clave Primaria ?

Modelo Relacional
Relaciones:
DNI

Nombre

Puesto

Fnacimiento

DNI

ClaveForanea

Proyecto

Proyecto

Tiempo

DNI_Director

Cliente

Inicio

Clave Foranea

Clave Foranea

5

Creación de Tablas
Tabla Empleados
CREATE TABLE Empleados (
DNI INTEGER,
Nombre CHAR(50),
Puesto CHAR(50),
FNacimiento DATE)

Creación de Tablas
Tabla Proyectos
CREATE TABLE Proyectos (
Numero INTEGER,
DNI_Director CHAR(50),
Cliente CHAR(50),
FInicio DATE)

6

Creación de Tablas
Tabla TiemposCREATE TABLE Tiempos (
Proyecto INTEGER,
DNI INTEGER,
Tiempo INTEGER)

Claves Primarias
Tablas Empleados y Proyectos
ALTER TABLE Empleados ADD
CONSTRAINT clave_empleados
PRIMARY KEY(DNI)
ALTER TABLE Proyectos ADD
CONSTRAINT clave_proyectos
PRIMARY KEY(Proyecto)

7

Integridad Referencial
Relación de Tiempos a Empleados
ALTER TABLE Tiempos ADD
CONSTRAINT ajena_empleados
FOREIGN KEY(DNI) REFERENCESEmpleados(DNI)

Integridad Referencial
Relación de Tiempos a Proyectos
ALTER TABLE Tiempos ADD
CONSTRAINT ajena_proyectos
FOREIGN KEY(Proyecto) REFERENCES
Proyectos(Proyecto)

8

Integridad Referencial
Relación de Proyectos a Empleados
ALTER TABLE Proyectos ADD
CONSTRAINT ajena_empleados
FOREIGN KEY(DNI_Director)
REFERENCES Empleados(DNI)

Modificación de tablas
Añadir un nuevo campo en la tablaProyectos que indique si el proyecto está
ó no finalizado (campo lógico)
ALTER TABLE Proyectos ADD
Finalizado LOGICAL;
Proyecto DNI_Director Cliente Inicio Finalizado

9

Claves Candidatas
Suponiendo la existencia de alguna
clave de este tipo, la sentencia SQL que
la genera es:
ALTER TABLE tabla ADD CONSTRAINT
clave_unica UNIQUE(columna)

Consultas
Sentencia SELECT
SELECT [DISTINCT] campos FROMtabla
Ejemplo: Listar el nombre y el puesto de cada
empleado
SELECT nombre, puesto FROM empleados

10

Consultas
Sentencia SELECT
Listar todos los campos de la tabla:

SELECT * FROM empleados
Columnas calculadas y alias de columna:

SELECT SUM(tiempo)/24 AS Dias
FROM tiempos

Consultas
Sentencia SELECT
SELECT campos FROM tabla
WHERE condición
Ejemplo: Listar el nombre de los empleados nacidos
en unafecha determinada
SELECT Nombre FROM Empleados
WHERE Fnacimiento=#05/08/1970#

11

Consultas
Test de Comparación:
Comparación simple:

=, <>, >, >=, <, <=

Pertenencia a conjunto
… WHERE expresión
IN (valor1, valor2, valor3, …)

Pertenencia a rango
… WHERE expresión
BETWEEN valor1 AND valor2

Consultas
Correspondencia con patrón:
… WHERE expresión
LIKE ‘patrón’
Uso de comodines ( * , ? ) ó ( % ,_ )

Valor nulo (NULL)
… WHERE expresión IS NULL
Condiciones compuestas: mediante AND, OR y
NOT (y el uso de paréntesis)

12

Consultas
Ordenación de filas:
Criterio de ordenación:
SELECT campos FROM tabla
ORDER BY columna [DESC] [,columna,…]

Límite de filas
SELECT TOP n campos FROM tabla
ORDER BY columna

Consultas
Agrupación
SELECT columna, función(columna)
FROM tabla
WHERE condición
GROUP...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Consulta
  • Consulta
  • consulta
  • CONSULTAS
  • CONSULTA
  • consulta
  • Consulta
  • consulta

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS