MySQL - Ayuda con un trabajo mysql

 
Vista:

Ayuda con un trabajo mysql

Publicado por Miguel Angel (1 intervención) el 14/04/2013 12:34:14
Algun alma caritativa que pueda ayudarme con este trabajo por favor es para mañana y no tengo ni idea de hacerlo, solo he conseguido hacer tres preguntas.

PACIENTES: personas a las se realiza la analítica.
DOCTORES: que solicitan la analítica del paciente.
ESPECIALIDADES: diferentes especialidades de los doctores
PETICIONES: datos de la analítica
TIPOS_ANALISIS: diferentes tipos de análisis que se pueden realizar.

La descripción de las tablas es la siguiente:

PACIENTES
DNI_PAC alfanumérico(10)
NOMBRE_PAC alfanumérico(50)
TELEFONO alfanumérico(20)
ASEGURADORA alfanumérico(50)

DOCTORES
DNI_DOC alfanumérico(10)
NOMBRE_DOC alfanumérico(50)
ESPECIALIDAD numérico(10)
TELEFONO alfanumérico(20)

ESPECIALIDADES
ID_ESP numérico(10)
DESC_ESP alfanumérico(50)

TIPOS_ANALISIS
ID_ANA numérico(10)
DESC_ANA alfanumérico(100)



PETICIONES
ID_PET numérico(10)
FECHA_PET alfanumérico(50)
ID_ANA numérico(10)
DNI_PAC alfanumérico(10)
DNI_DOC alfanumérico(10)



Se pide:

1 – Comprobar la versión de MySQL con la que está trabajando.
SELECT VERSION(); versión 5.0.10ª-beta-nt

2 - Crear una base de datos LABORATORIO
CREATE DATABASE laboratorio;

3 – Crear un usuario US_LAB con derechos totales sobre la base de datos LABORATORIO
GRANT ALL PRIVILEGES ON laboratorio.* TO ‘us_lab’@'localhost’ IDENTIFIED BY ‘6622’ WITH GRANT OPTION;
FULL PRIVILEGES;

4 – Conectarse con el usuario US_LAB a la base de datos LABORATORIO


5 – a) Crear las tablas con las siguientes restricciones en el orden correcto:

PACIENTES
La clave primaria de PACIENTES es DNI_PAC
El campo NOMBRE_PAC no puede ser nulo.
El campo TELEFONO no puede ser nulo.
CREATE TABLE pacientes
(dni_pac VARCHAR (10) PRIMARY KEY,
nombre_pac varchar(50) NOT NULL,
telefono VARCHAR(20) NOT NULL,
aseguradora VARCHAR(50));

DOCTORES
La clave primaria de DOCTORES es DNI_DOC
El campo NOMBRE_DOC no puede ser nulo.
ESPECIALIDAD es clave ajena Al campo ID_ESP de la tabla ESPECIALIDADES
El campo TELEFONO no puede ser nulo.
CREATE TABLE doctores
(dni_doc VARCHAR (10) PRIMARY KEY,
Nombre_doc VARCHAR (20) NOT NULL,
FOREIGN KEY especialidad REFERENCES especialidades(id_esp)
Telefono INT (9));

ESPECIALIDADES
La clave primaria de ESPECIALIDADES es ID_ESP.

TIPOS_ANALISIS
ID_ANA es la clave primaria

PETICIONES
La clave primaria de PETICIONES es ID_PET
ID_ANA es clave ajena al campo ID_ANA de la tabla TIPOS_ANALISIS
DNI_PAC es clave ajena al campo DNI_PAC de la tabla PACIENTES
DNI_DOC es clave ajena al campo DNI_DOC de la tabla DOCTORES


- b) Comprobar que se han creado las tablas

6 – a) Insertar las filas (en el orden correcto) para que el contenido de las tablas sea:

PACIENTES
DNI_PAC NOMBRE_PAC TELEFONO ASEGURADORA
22897576R PÉREZ GARCÍA, CARLOS 646787987 ASISA
19887234W GUTIÉRREZ CAMACHO, ANTONIO 646678986 CASER
71515623A MARTÍNEZ HEREDIA, PACO 646234127 SANITAS
55524632J RUIZ SEÑOR, RAFAEL 687565454 SANITAS
33788976F LÁZARO PEDRÓS , MARÍA 690343434 ASISA
79876867X SERRA TORNER, LUISA 696340929 DKV
44787345H TUSET BOADA, CARLOS 623758940 CASER

DOCTORES
DNI_DOC NOMBRE_DOC ESPECIALIDAD TELEFONO
23456398F GÓMEZ DAVID, ADRIÁN 1 646768454
25349857H BURGOS CASA, CANDY 2 659758476
22909456Y HERAS PRADO, ANTONIA 1 676234598
55776898K RAMÓN CORONADO,LUIS 4 654364736
88647389P DOMÍNGUEZ GÓMEZ, MANUEL 5 623787343
22888444O MATEO DÍAZ, RAMÓN 3 659876457
78988484B CONRADO ALONSO, JOSE 6 645878745

ESPECIALIDADES
ID_ESP DESC_ESP
1 GENERALISTA
2 TRAUMATOLOGIA
3 CARDIOLOGIA
4 NEUMOLOGIA

PETICIONES
ID_PET FECHA_PET ID_ANA DNI_PAC DNI_DOC
1 2008-01-03 2 71515623A 23456398F
2 2008-05-10 2 33788976F 55776898K
3 2008-05-08 3 79876867X 23456398F
4 2008-05-11 4 44787345H 55776898K
5 2008-05-12 2 19887234W 25349857H
6 2008-05-05 4 22897576R 55776898K
7 2008-03-15 5 44787345H 88647389P
8 2008-03-19 1 71515623A 23456398F
9 2008-03-26 2 71515623A 78988484B
10 2008-03-15 2 19887234W 88647389P
11 2008-03-15 3 33788976F 55776898K
12 2008-03-26 2 44787345H 23456398F

TIPOS ANALISIS
ID_ANA DESC_ANA
1 SANGRE BÁSICO
2 SANGRE COMPLETO
3 ORINA BÁSICO
4 ORINA COMPLETO
5 HECES BÁSICO
6 HECES COMPLETO
Para las tablas ESPECIALIDADES y PETICIONES indicar las sentencias a utilizar y para las tablas restantes utilizar las sentencias que se detallan a continuación (si se encuentra algún error corregirlo):

INSERT INTO PACIENTES VALUES
('22897576R', 'PÉREZ GARCÍA, CARLOS', 646787987, 'ASISA'),
('19887234W', 'GUTIÉRREZ CAMACHO, ANTONIO', 646678986, 'CASER'),
('71515623A', 'MARTÍNEZ HEREDIA, PACO', 646234127, 'SANITAS'),
('55524632J', 'RUIZ SEÑOR, RAFAEL', 687565454, 'SANITAS'),
('33788976F', 'LÁZARO PEDRÓS , MARÍA', 690343434, 'ASISA'),
('79876867X', 'SERRA TORNER, LUISA', 696340929, 'DKV'),
('44787345H', 'TUSET BOADA, CARLOS', 623758940, 'CASER');

INSERT INTO DOCTORES VALUES
('23456398F', 'GÓMEZ DAVID, ADRIÁN', 1, '646768454'),
('25349857H', 'BURGOS CASA, CANDY', 2, '659758476'),
('22909456Y', 'HERAS PRADO, ANTONIA', 1, '676234598'),
('55776898K', 'RAMÓN CORONADO,LUIS', 4, '654364736'),
('88647389P', 'DOMÍNGUEZ GÓMEZ, MANUEL', 1, '623787343'),
('22888444O', 'MATEO DÍAZ, RAMÓN', 3, '659876457'),
('78988484B', 'CONRADO ALONSO, JOSE', 2, '645878745');

INSERT INTO TIPOS_ANALISIS VALUES
(1, 'SANGRE BÁSICO'),
(2, 'SANGRE COMPLETO'),
(3, 'ORINA BÁSICO'),
(4, 'ORINA COMPLETO'),
(5, 'HECES BÁSICO'),
(6, 'HECES COMPLETO');

- b) Comprobar mediante SELECTS que se han insertado las filas.


7 – Recuperar los datos de los clientes a los que se les ha realizado algún análisis del tipo 'SANGRE BÁSICO'.

8 – Recuperar el tipo de analítica más solicitada.

9 – Recuperar los datos de los 2 doctores que mayor número de análisis nos han solicitado últimamente, indicando el número que ha solicitado cada uno.

10 – Obtener los datos de los DOCTORES que nunca nos han pedido una analítica de nadie.

11 – Hallar los datos de los PACIENTES que no se han realizado una analítica en los últimos 20 días, indicando el tiempo que ha transcurrido desde que se hicieron la última.

12.- Crear una vista (DOCS_PETS) con los datos de los DOCTORES y el número de veces que nos ha solicitado una analítica, incluyendo también a los que nunca nos han pedido ninguna.

13 – Indicar las sentencias a utilizar y mostrar de la tabla PACIENTES:
• el contenido actual
• el contenido tras actualizar los datos de los PACIENTES cuya aseguradora sea "CASER" para que pase a ser "MUTUA"
• el contenido después de haber deshecho el cambio anterior para volver a la situación original
14 – Añadir un índice ÚNICO en la tabla PACIENTES en la columna NOMBRE_PAC.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder