Control 4 Fundamentos Bases de Datos Iacc

CONTROL SEMANA 4 LENGUAJE SQL Jorge Donoso Sagal. FUNDAMENTOS DE BASE DE DATOS Instituto IACC 21-04-2018 Instrucciones

Views 152 Downloads 7 File size 404KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

CONTROL SEMANA 4 LENGUAJE SQL Jorge Donoso Sagal. FUNDAMENTOS DE BASE DE DATOS Instituto IACC 21-04-2018

Instrucciones 1. 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, donde deberá entregar tres (3) en total.

RESPUESTA: CREATE TABLE tab_Medic( id_medico CHAR(10) PRIMARY KEY NOT NULL, nomb_medico VARCHAR (50) NOT NULL, apell_pater_medico VARCHAR(50) NOT NULL, apell_mater_medico VARCHAR(50) NOT NULL, especialidad_medico VARCHAR(50) NOT NULL, telefono_medico INT NULL );

CREATE TABLE tb_Paciente( id_paciente CHAR(10) PRIMARY KEY NOT NULL, nomb_paciente VARCHAR (50) NOT NULL, apell_pater_paciente VARCHAR(50) NOT NULL, apell_mater_paciente VARCHAR(50) NOT NULL, telefono_paciente INT NULL,

direccion_paciente VARCHAR(100) NULL );

CREATE TABLE tb_Cita_medica( id_citas CHAR(10) PRIMARY KEY NOT NULL, id_paciente CHAR(10) NOT NULL, id_medico CHAR(10) NOT NULL, fecha_cita VARCHAR(20) NOT NULL, especialidad VARCHAR(100) 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).

RESPUESTA:

//TABLA MEDICO INSERT INTO tab_Medic (id_medico, nomb_medico, apell_pater_medico, apell_mater_medico, especialidad_medico, telefono_medico) VALUES (14365875-6, "Carlos", "Catalan", "Opazo", "Cirujano", 952658474);

INSERT INTO tab_Medic (id_medico, nomb_medico, apell_pater_medico, apell_mater_medico, especialidad_medico, telefono_medico) VALUES (11365875-6, "Catalina", "Oyarce", "Baez", "Pediatra", 972658474);

INSERT INTO tab_Medic (id_medico, nomb_medico, apell_pater_medico, apell_mater_medico, especialidad_medico, telefono_medico) VALUES (17365875-6, "Santiago", "Gonzalez", "Polgati", "Oftalmologo", 982658445);

//TABLA PACIENTE INSERT INTO tb_Paciente (id_paciente, nomb_paciente, apell_pater_paciente, apell_mater_paciente, telefono_paciente, direccion_paciente) VALUES (12365875-6, "Juan", "Gallardo", "Poblete", 952658474, “Jose rosales 322 cerro cordillera valparaiso”);

INSERT INTO tb_Paciente (id_paciente, nomb_paciente, apell_pater_paciente, apell_mater_paciente, telefono_paciente, direccion_paciente) VALUES (17365837-k, "Cintya", "Alvear", "Valdebenito", 987458474, “Pob el alamo pje lago chapo 2681 Villa alemana”);

INSERT INTO tb_Paciente (id_paciente, nomb_paciente, apell_pater_paciente, apell_mater_paciente, telefono_paciente, direccion_paciente) VALUES (15365865-0, "Olivia", "Saez", "Olave", 949858474, “Victor Manuel 1785 Santiago”);

//TABLA PACIENTE INSERT INTO tb_Cita_medica (id_citas, id_pacientes, id_medico, fecha_cita, especialidad) VALUES (“0001”, “12365875-6”, “14365875-6”,”10-10-2019”, “Cirujia”);

INSERT INTO tb_Cita_medica (id_citas, id_pacientes, id_medico, fecha_cita, especialidad) VALUES (“0002”, “17365837-k”, “11365875-6”,”15-04-2019”, “Pediatria”);

INSERT INTO tb_Cita_medica (id_citas, id_pacientes, id_medico, fecha_cita, especialidad) VALUES (“0003”, “15365865-0”, “17365875-6”,”21-05-2019”, “Oftalmologia”);



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

RESPUESTA:

//Tabla para Médicos SELECT * FROM tab_Medic; o SELECT id_medico, nomb_medico FROM tab_Medic;

//Tabla para Pacientes SELECT * FROM tb_Paciente; o SELECT id_paciente, nomb_paciente, teléfono_paciente, direccion_paciente FROM tb_Paciente;

//Tabla para Citas SELECT * FROM tb_Cita_medica;

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.

RESPUESTA: Ambas no son lo mismo: A.- DDL lenguaje de programación para definir estructuras de datos, definidos por los sistemas gestores de bases de datos, permiten definir las estructuras que almacenaran los datos y los procedimientos o las funciones que permitan consultarlos. En DLL existen las sentencias:     

CREATE, que permite crear una base de datos, una tabla, vistas, etc. ALTER, se utiliza para modificar la estructura, sea para agregar o borrar columnas y los datos que tengan las columnas en una tabla. DROP, que permite eliminar los objetos de la estructura, borrar un índice, una secuencia o la tabla completa. TRUNCATE, permite eliminar todos los registros que contiene la tabla, esto lo hace sin eliminar la tabla en forma física como lo hace el DROP RENAME, cambiar el nombre de la tabla.

B.- DML, es utilizado para introducir datos que permitirán posteriormente realizar tareas del tipo consulta o modificación de datos.

Los comandos o instrucciones que se pueden utilizar para manipular los datos, son:    

SELECT, se utiliza para consultar datos en una base de datos, en especial, en las tablas que esta contiene. INSERT, permite insertar registros a una tabla dentro de una base de datos. UPDATE, se utiliza para modificar valores de registros ya almacenados en una tabla, también puede modificar uno o todos los registros que tenga la tabla almacenado. DELETE, se utiliza para eliminar registros de una tabla, esta tarea debe ser de una tabla a la vez y puede eliminar los registros esta contenga si así lo requiere.

Al momento de administrar una base de datos existen diferencias entre DDL y DML y los comandos y sentencias que se utilizan son diferentes.

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.

RESPUESTA: El primer paso es controlar la situación y dar una información clara acerca del correcto funcionamiento a nuestro cliente, mencionándole que es incorrecta la información antes dada, porque toda la información que él requiera, después finalizado el desarrollo de la base de datos podrán ser obtenidas. Explicarle también que las bases de datos, tienen como función, el poder ser modificadas, eliminadas e insertar nuevos campos de acuerdo a las necesidades de la empresa, también podrá solicitar nuevos informes, que requieran cruces de información de distintas tablas. En resumen el cliente tiene la capacidad de solicitar el o los controles de cambios necesarios o nuevos desarrollos al software solicitado. Estos cambios se pueden ver reflejados en trabajos de bases de datos de mega empresas las cuales sus registros son de una cantidad considerable y siempre están cambiando por las necesidades que esta tenga, lo vemos en las grandes empresas de retail, supermercados, multitiendas etc. Estas para lograr un crecimiento deben ir innovando en sus formas de vender y para ellos necesitan informes de estadísticas, los cuales van cambiando de acuerdo a sus necesidades como mencionábamos anteriormente.

esto se realiza incluso en grandes sistemas que adquieren las empresas como por ejemplo, en un ERP como Solomon en donde ya vienen definidos reportes pero el cliente puede solicitar otros o incluso modificar alguno de acuerdo a sus necesidades.

Bibliografía

IACC (2015)SEMANA 4, SQL: Lenguaje para la definición, manipulación y control de bases de datos relacionales I. http://online.iacc.cl/pluginfile.php/4654101/mod_resource/content/2/04_Fundamentos_de _Bases_de_Datos.pdf

IACC (2015)SEMANA 4, Recursos Adicionales, Lenguaje de definición de datos https://www.aulaclic.es/sql/t_8_1.htm

IACC (2015)SEMANA 4, Recursos Adicionales, Manual de SQL. http://online.iacc.cl/pluginfile.php/4654104/mod_resource/content/1/ManualSQL%20S4.pdf