You are on page 1of 6

Lenguaje SQL

Eduardo Andrés Flores Sepúlveda

Fundamentos de Bases de Datos

Instituto IACC

22 de Julio de 2018
Desarrollo
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:
 Sentencia de creación de tablas para cada una de las tablas. Deberá entregar tres (3) en
total.

Tabla para médicos


Create table TblMedico (MedIdentificacion Char(10) Primary Key not null, MedNombres
Varchar (50) not null, MedApellidos Varchar(50) not null MedRegistro Char(10) not null )

Tabla para pacientes


Create table Tblpacientes (Id_pacientes(10) Primary Key not null, Pac_Nombres Varchar (50)
not null, Pac_Apellidos Varchar(50) not null )

Tabla para citas


Create table Tblcitas (Cod_citas Char(10) Primary Key not null, Fecha_citas date,
Nom_especialidad Varchar(18) not null)

 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


Siguiendo con la tabla de la pregunta anterior, esto puede quedar de la siguiente manera:
En la tabla medico se va a insertar los datos del nombre del doctor, con su identificación (cedula
de identidad) y el número de registro médico. Por lo que la sentencia de inserción quedaría de la
siguiente forma:
INSERT INTO TblMedico (MedIdentificacion, MedNombres, MedApellidos, MedRegistro)
VALUES (17845356-2, ‘Eduardo’, ‘Flores’, 6556874)
El registro de los datos de tipo alfanumérico, y las fechas, generalmente se escriben entre
comillas simples o también pueden ser doble comillas, dependiendo del SMBD a usar.

Tabla para pacientes


INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres, Pac_Apellidos) VALUES (02,
‘Eduardo’, ‘Flores’); INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres, Pac_Apellidos)
VALUES (03, ‘María’, ‘Toro’); INSERT INTO Tblpacientes (Id_pacientes, Pac_Nombres,
Pac_Apellidos) VALUES (04, ‘Jesús’, ‘Parra’)
OTRA FORMA
INSERT INTO Tblpacientes VALUES (04, ‘Leonor’, ‘Gutiérrez’)
Ambos ejemplos son lo mismo y con los que se obtienen el mismo resultado, sin embargo la
diferencia está en que, en la primera se especifican cada una de las columnas en la cual
insertaremos datos.
Tabla para citas
INSERT INTO Tblcitas (Cod_citas, Nom_especialidad) VALUES (04, ‘TRAUMATOLOGIA’);
INSERT INTO Tblcitas Cod_citas, Fecha_citas, Nom_especialidad) VALUES (05, ’04-03-
2017’, ‘TRAUMATOLOGIA’); INSERT INTO Tblcitas Cod_citas, Fecha_citas,
Nom_especialidad) VALUES (06,’04-03-2017’, ‘MEDICINA GENERAL’);

 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;

SELECT Id_pacientes, Pac_Nombres, Pac_Apellidos FROM Tblpacientes ORDER BY


Id_pacientes;
Tabla para Médicos
SELECT * FROM TblMedico ORDER BY MedIdentificacion;

SELECT MedIdentificacion, MedNombres, MedApellidos, MedRegistro FROM TblMedico


ORDER BY MedIdentificacion;
Si solo se requiere realizar la consulta donde solo se necesitan aquellos registros donde el
nombre sea “Eduardo Flores”, el código quedaría de la siguiente forma:
SELECT * FROM TblMedico WHERE MedNombres = 'Eduardo', MedApellidos = 'Flores';
SELECT MedIdentificacion, MedNombres, MedApellidos, MedRegistro FROM TblMedico
WHERE MedNombres = 'Eduardo', MedApellidos = 'Flores';

Tabla para citas


Si la consulta que se quiere hacer, requiere que se devuelvan todos los registros, quedaría de la
siguiente manera:
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.

Las sentencias SQL se dividen en dos categorías; Lenguaje de Definición de Datos; Data
Definition Language (DDL) y Lenguaje de Manipulación de Datos; Data Manipulation
Language (DML).

Lenguaje de definición de datos (DDL), se refiere a las sentencias DDL que se utilizan para crear
y modificar la estructura de las tablas, así como también crear y modificar otros objetos de la
base de datos.
Quedando por ejemplo de la siguiente forma:

 CREATE – que es para crear objetos en la base de datos.

 ALTER – que se utiliza para modificar la estructura de la base de datos.

 DROP – utilizado para borrar objetos de la base de datos.

 TRUNCATE – que se utiliza para eliminar todos los registros de la tabla, incluyendo todos los
espacios asignados a los registros.

Lenguaje de manipulación de datos (DML), se refiere a las sentencias que son utilizadas para
gestionar datos dentro de los schemas.

Quedando por ejemplo de la siguiente forma:

 SELECT – utilizados para obtener datos de una base de datos.

 INSERT – que se utilizan para insertar datos a una tabla.

 UPDATE – utilizados para modificar datos existentes dentro de una tabla.

 DELETE – se utiliza para eliminar todos los registros de la tabla; no borra los espacios asignados
a los registros

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.
Bibliografía

- Fundamentos de Bases de Datos. Contenido semana 4. IACC 2018

You might also like