You are on page 1of 10

Control N°4

ARNOLDO EYZAGUIRRE SOTO

Fundamento de Base de Datos

Instituto IACC

21 de mayo del 2018


Desarrollo

a. Imagínese que usted ha sido contratado para diseñar la base de datos de un sistema que se encargará
de registrar las citas médicas de una clínica que recién empezará a ofrecer sus servicios. Es por ello
que debe crear una tabla para médicos, una para pacientes y una para la cita_médica. Usted será el
encargado de decidir los atributos que almacenará en cada tabla.

Es por ello que deberá elaborar:


a. Sentencia de creación de tablas para cada una de las tablas, donde deberá entregar tres (3) en
total.
b. Sentencia de inserción de datos en cada tabla, mínimo 3 registros en cada tabla. Deberá entregar
como mínimo nueve (9) sentencias (3 por cada tabla).
c. Consulta en SQL que retorne por cada tabla los registros que esta tiene. Deberá entregar tres (3)
consultas en SQL

Desarrollo

a. Sentencia de creación de tablas para cada una de las tablas, donde deberá entregar tres (3) en
total.

Tabla para médicos:

CREATE TABLE `test`.`Tbl_Medicos` (

`idTbl_Medicos` INT NOT NULL,

`Med_Rut` VARCHAR(45) NULL COMMENT ' ',

`Med_Nombres` VARCHAR(45) NULL,

`Med_Apellidos` VARCHAR(45) NULL,

`Med_Celular` VARCHAR(45) NULL,

`Med_Fec_Nac`DATE NULL,

`Med_Especialidad` VARCHAR(45) NULL,

PRIMARY KEY (`idTbl_Medicos`));


Tabla para pacientes:

CREATE TABLE `test`.`Tbl_Pacientes` (

`idTbl_Pacientes` INT NOT NULL,

`Pac_Rut` VARCHAR(45) NULL,

`Pac_Nombres` VARCHAR(45) NULL,

`Pac_Apellidos` VARCHAR(45) NULL,

`Pac_Fec_Nac` DATE NULL,

`Pac_Celular` VARCHAR(45) NULL,

`Pac_Prevision` VARCHAR(45) NULL,

PRIMARY KEY (`idTbl_Pacientes`));

Tabla para citas:

CREATE TABLE `test`.`Tbl_CitasMedicas` (

`idTbl_CitasMedicas` INT NOT NULL,

`Tbl_idDoc` INT NOT NULL,

`Tbl_idPac` INT NOT NULL,

`Tbl_CitasMedicas_Fecha_Atencion` DATE NOT NULL,

`Tbl_CitasMedicas_Diagnostico` VARCHAR(1000) NOT NULL,

`Tbl_CitasMedicas_Fecha_ProxChequeo` DATE NULL,

`Tbl_CitasMedicas_Costo_Total` INT NOT NULL,

`Tbl_CitasMedicas_Medio_Pago` VARCHAR(45) NOT NULL,

PRIMARY KEY (`idTbl_CitasMedicas`),

INDEX `fk_Tbl_CitasMedicas_1_idx` (`Tbl_idDoc` ASC),


INDEX `fk_Tbl_CitasMedicas_Tbl_Pacientes_idx` (`Tbl_idPac` ASC),

CONSTRAINT `fk_Tbl_CitasMedicas_Tbl_Medicos`

FOREIGN KEY (`Tbl_idDoc`)

REFERENCES `test`.`Tbl_Medicos` (`idTbl_Medicos`)

ON DELETE RESTRICT

ON UPDATE CASCADE,

CONSTRAINT `fk_Tbl_CitasMedicas_Tbl_Pacientes`

FOREIGN KEY (`Tbl_idPac`)

REFERENCES `test`.`Tbl_Pacientes` (`idTbl_Pacientes`)

ON DELETE RESTRICT

ON UPDATE CASCADE);
b. Sentencia de inserción de datos en cada tabla, mínimo 3 registros en cada tabla. Deberá entregar
como mínimo nueve (9) sentencias (3 por cada tabla).

Tabla para Médicos:

Para la tabla medico se va a insertar los datos del doctor Pablo Melendez, con identificación 7584352-7
y registro medico 10122018. La sentencia de inserción sería:

INSERT INTO TblMedico (MedIdentificacion, MedNombres, MedApellidos, MedRegistro)

VALUES (7584352-7, ‘Pablo’, ‘Melendez’, 10122018)

En la tabla médicos se insertan los datos del doctor Pedro Pargas, con identificación 13678908-2 y
registro medico 10132018 La sentencia de inserción sería:

INSERT INTO TblMedico (MedIdentificacion, MedNombres, MedApellidos, MedRegistro)

VALUES (13678908-2, ‘Pedro’, ‘Pargas’, 10132018)

El siguiente dato de médico es del doctor Antonio Llanos, con identificación 14125987-8 y registro
medico 10142018 La sentencia de inserción sería:

INSERT INTO TblMedico (MedIdentificacion, MedNombres, MedApellidos, MedRegistro)

VALUES (14125987-8, ‘Antonio’, ‘Llanos’, 10142018)

Los datos de tipo alfanumérico, así como las fechas, generalmente se escriben entre comillas simples o
dobles dependiendo del SMBD a usar.
Tabla para pacientes

INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres, Pac_Apellidos) VALUES (02, ‘Luis’,

‘Pinto’);

INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres, Pac_Apellidos) VALUES (03, ‘Lucas’,

‘Barrios’);

INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres, Pac_Apellidos) VALUES (04, ‘Claudia’,

‘Cordova’)

Tabla para citas

INSERT INTO Tblcitas (Cod_citas, Nom_especialidad) VALUES (04, ‘PEDIATRIA’);

INSERT INTO Tblcitas Cod_citas, Fecha_citas, Nom_especialidad) VALUES (05,

’01-10-2017’ , ‘PEDIATRIA’);

INSERT INTO Tblcitas Cod_citas, Fecha_citas, Nom_especialidad) VALUES (06,

’01-10-2017’ , ‘MEDICINA GENERAL’);


c. Consulta en SQL que retorne por cada tabla los registros que esta tiene. Deberá entregar tres (3)
consultas en SQL

Tabla para pacientes:

SELECT * FROM Tblpacientes ORDER BY Id_pacientes; o

SELECT Id_pacientes, Pac_Nombres, Pac_Apellidos FROM Tblpacientes ORDER BY Id_pacientes;

Tabla para Médicos

SELECT * FROM TblMedico ORDER BY MedIdentificacion; o

SELECT MedIdentificacion, MedNombres, MedApellidos, MedRegistro FROM TblMedico ORDER

BY MedIdentificacion;

Si la consulta que se requiere implica que solo se necesitan aquellos registros donde el nombre sea
“Antonio Llanos”, el código sería así:

SELECT * FROM TblMedico WHERE MedNombres = 'Antonio', MedApellidos = 'Llanos';

SELECT MedIdentificacion, MedNombres, MedApellidos, MedRegistro FROM

TblMedico WHERE MedNombres = 'Antonio', MedApellidos = 'Llanos';

Tabla para citas

Si se quisiera hacer una consulta que devuelva todos los registros

SELECT * FROM Tblcitas;

SELECT Cod_citas, Fecha_citas, Nom_especialidad FROM Tblcitas;


2. Usted ha sido seleccionado por el profesor de la asignatura de Fundamentos de Bases de Datos para
explicar brevemente los Lenguajes de Manipulación (DML) y de Definición de Datos (DDL), un
compañero le expone que para él son lo mismo, sin embargo, usted no está de acuerdo con ello. Ante
eso, ¿qué diferencias puede indicarle a su compañero entre los DDL y DML? Fundamente con algún
ejemplo lo antes mencionado.

El lenguaje de definición de datos, o comandos DDL (Data definition Language ó Lenguaje de


definición de datos), se utiliza para crear, cambiar y destruir estructuras lógicas que constituyen el
modelo lógico. En el fondo es para crear y modificar objetos.
El resultado de la compilación de estas instrucciones es un conjunto de tablas, relaciones y reglas cuyas
definiciones quedan almacenadas en un archivo (tabla u otro medio de almacenamiento) que contiene
“metadatos”, esto es, datos acerca de datos.
Entre estos comandos se encuentran: CREATE, ALTER, DROP, TRUNCATE, COMMENT,
RENAME, entre otros.

Los comandos DML (Data Manipulation Language) o lenguaje de manipulación de datos, son aquellos
que permiten insertar, devolver, actualizar o eliminar registros de determinada tabla de una base de
datos, es decir, son las que permiten visualizar y modificar los datos de las tablas.
Son comandos muy útiles, ya que sin ellos no sería posible tener data almacenada ni recuperarla para su
posterior uso.
Entre sus comandos se encuentran SELECT, INSERT, UPDATE, DELETE, etc.

Un DML es un sublenguaje de consulta y manipulación de datos, entendiendo por manipulación de


datos la:
 Recuperación de Información.
 Inserción de nueva Información.
 Eliminación (Borrado) de información existente.
 Modificación de Información Almacenada.

Comando Descripción
Utilizado para consultar registros de la base de datos que satisfagan un criterio
SELECT determinado
INSERT Utilizado para cargar lotes de datos en la base de datos en una  única operación.
UPDAT
E Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
Ejemplo de Insert.
 Insert into alumnos values(90,”Pedro”,”Luis”,”José”);

Ejemplo de Delete.
 Delete from alumnos where edad>=40;

Ejemplo de Update.
 Update productos set precio=precio*1.15 where categoria=farmacia;

3. Usted ha sido contratado por una empresa desarrolladora de software para trabajar directamente con
la base de datos de un sistema para el control de acceso de personal. Al entrevistarse con el cliente,
este le indica que está muy preocupado porque le han dicho que al tener un sistema sólo podrá contar
con los reportes que se soliciten en un principio, ya que las consultas sobre la base de datos son
limitadas. ¿Es real esto?, ¿qué podría indicarle al cliente para calmarlo? Fundamente su respuesta.

Una Base de Datos es una herramienta diseñada según la necesidad del cliente, por lo tanto un sistema
de control de acceso solo es una Base de Datos más, pero con un diseño que permita obtener los
informes diarios y en tiempo real. La Base de Datos es una herramienta que sirve para organizar,
gestionar y recuperar los datos que se encuentran almacenados en una base de datos relacional, lo que
implicaría que permite que exista una comunicación con el sistema de gestión de la base de datos.

Como resumen podemos indicar los siguientes aspectos importantes:

a. Este lenguaje está pensado para cualquier tipo de usuarios, es decir, desde administradores de
bases de datos, pasando por desarrolladores, hasta usuarios finales normales.
b. Al utilizar SQL, el usuario solo se encarga de especificar lo que necesita, no se preocupa por
establecer dónde ni cómo.
c. El lenguaje SQL permite realizar cualquier tipo de consulta a los datos almacenados en la base
de datos.
d. SQL permite realizar consultas, actualizaciones, definiciones de datos y control.
Bibliografía

Contenido de la semana

You might also like