Você está na página 1de 21

BASES DE DATOS BASICO

CÓDIGO: 301330

Unidad 3: Fase 3-Desarrollo

Presentado a:
Ivan Alejandro Veloza
Tutor

Entregado por:

Sandra Paola Molina


Cód: 52.913.263

Grupo: 301330_7

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA - UNAD


NOVIEMBRE DE 2018
BOGOTA
1. Programación de la base de datos con el lenguaje SQL del Script DDL1
Creación de la base de datos y las tablas con sus llaves primarias, con comandos en APEX
Créate database EMPLEADOS;
CREATE TABLE empleados (
id_empleados NUMBER(15),
nombre_1 NVARCHAR2(15) NOT NULL,
nombre_2 NVARCHAR2(15) NOT NULL,
apellido_1 NVARCHAR2(15) NOT NULL,
apellido_2 NVARCHAR2(15) NOT NULL,
f_ingreso DATE,
f_nacimiento DATE,
estado_civil CHAR(2),
salario NUMBER,
correo NVARCHAR2(50),
sexo CHAR(1),
id_departamento NUMBER NOT NULL,
id_cargo NUMBER NOT NULL,
CONSTRAINT pk_empleados PRIMARY KEY (id_empleados)
);

1
Camuña Rodríguez, J. (2014) Lenguajes de definición y modificación de datos SQL (UF1472). Madrid, ESPAÑA: IC
Editorial. pág. 5-55. Recuperado de
https://bibliotecavirtual.unad.edu.co:2538/lib/unadsp/detail.action?docID=4184070
CREATE TABLE departamento (
id_departamento NUMBER NOT NULL,
nombre NVARCHAR2(25),
CONSTRAINT pk_departamento PRIMARY KEY (id_departamento)
);

CREATE TABLE cargo (


id_cargo NUMBER NOT NULL,
nombre VARCHAR2(25),
CONSTRAINT pk_cargo PRIMARY KEY (id_cargo)
);

Incluiremos las llaves foráneas.

ALTER TABLE empleados


ADD CONSTRAINT empleados_cargo_fk FOREIGN KEY ( id_cargo )
REFERENCES cargo ( id_cargo );
ALTER TABLE empleados
ADD CONSTRAINT empleados_departamento_fk FOREIGN KEY ( id_departamento )
REFERENCES departamento ( id_departamento );
 Borramos las tablas para generarlas desde es script

drop table empleados;


drop table cargo;

drop table departamento;


Generaremos las tablas con el script del data modeler
 Script creado del Data Modeler
Generado por Oracle SQL Developer Data Modeler 18.3.0.268.1156
-- en: 2018-11-20 23:27:33 COT
-- sitio: Oracle Database 11g
-- tipo: Oracle Database 11g

CREATE TABLE cargo (


id_cargo NUMBER NOT NULL,
nombre VARCHAR2(25) NOT NULL
);

ALTER TABLE cargo ADD CONSTRAINT cargo_pk PRIMARY KEY ( id_cargo );

CREATE TABLE departamento (


id_departamento NUMBER NOT NULL,
nombre NVARCHAR2(25) NOT NULL
);

ALTER TABLE departamento ADD CONSTRAINT departamento_pk PRIMARY KEY (


id_departamento );

CREATE TABLE empleados (


id_empleados NUMBER(15)
CONSTRAINT nnc_empleados_id_empleados NOT NULL,
nombre_1 NVARCHAR2(15) NOT NULL,
nombre_2 NVARCHAR2(15) NOT NULL,
apellido_1 NVARCHAR2(15) NOT NULL,
apellido_2 NVARCHAR2(15) NOT NULL,
f_ingreso DATE NOT NULL,
f_nacimiento DATE NOT NULL,
estado_civil CHAR(2) NOT NULL,
salario NUMBER NOT NULL,
correo NVARCHAR2(50) NOT NULL,
sexo CHAR(1) NOT NULL,
id_departamento NUMBER NOT NULL,
id_cargo NUMBER NOT NULL
);

ALTER TABLE empleados ADD CONSTRAINT empleados_pk PRIMARY KEY (


id_empleados );

ALTER TABLE empleados


ADD CONSTRAINT empleados_cargo_fk FOREIGN KEY ( id_cargo )
REFERENCES cargo ( id_cargo );

ALTER TABLE empleados


ADD CONSTRAINT empleados_departamento_fk FOREIGN KEY ( id_departamento )
REFERENCES departamento ( id_departamento );

ALTER TABLE empleados


ADD CONSTRAINT empleados_cargo_fk FOREIGN KEY ( id_cargo )
REFERENCES cargo ( id_cargo );

ALTER TABLE empleados


ADD CONSTRAINT empleados_departamento_fk FOREIGN KEY ( id_departamento )
REFERENCES departamento ( id_departamento );

-- Informe de Resumen de Oracle SQL Developer Data Modeler:


--
-- CREATE TABLE 3
-- CREATE INDEX 0
-- ALTER TABLE 7
-- CREATE VIEW 0
-- ALTER VIEW 0
-- CREATE PACKAGE 0
-- CREATE PACKAGE BODY 0
-- CREATE PROCEDURE 0
-- CREATE FUNCTION 0
-- CREATE TRIGGER 0
-- ALTER TRIGGER 0
-- CREATE COLLECTION TYPE 0
-- CREATE STRUCTURED TYPE 0
-- CREATE STRUCTURED TYPE BODY 0
-- CREATE CLUSTER 0
-- CREATE CONTEXT 0
-- CREATE DATABASE 0
-- CREATE DIMENSION 0
-- CREATE DIRECTORY 0
-- CREATE DISK GROUP 0
-- CREATE ROLE 0
-- CREATE ROLLBACK SEGMENT 0
-- CREATE SEQUENCE 0
-- CREATE MATERIALIZED VIEW 0
-- CREATE MATERIALIZED VIEW LOG 0
-- CREATE SYNONYM 0
-- CREATE TABLESPACE 0
-- CREATE USER 0
--
-- DROP TABLESPACE 0
-- DROP DATABASE 0
--
-- REDACTION POLICY 0
--
-- ORDS DROP SCHEMA 0
-- ORDS ENABLE SCHEMA 0
-- ORDS ENABLE OBJECT 0
--
-- ERRORS 0
-- WARNINGS 0
2. Programación con el lenguaje SQL del script DML para poblar las tablas de la base
de datos2.
Tabla cargo
insert into cargo values(001,'Rector');

2 Grabación Webconference Unidad 3: Fase 3 – Desarrollo. UNAD recuperado de https://goo.gl/MXRxER


insert into cargo values(002,'Profesor Titular');
insert into cargo values(003,'Profesor Asociado');
insert into cargo values(004,'Vicerrector');
insert into cargo values(005,'Monitor');

Tabla Departamento
insert into departamento values(1001,'Sistemas');
insert into departamento values(1002,'Telecomunicaciones');
insert into departamento values(1003,'Juridica');
insert into departamento values(1004,'Secretaria General');
insert into departamento values(1005,'Despacho');

Tabla empleados
insert into empleados values(79508928,'Daniel','Alberto','Prada','Martinez','08-10-
2008','06-13-1968','C',4200000,'dprada[at]anonimo.com','M',1001,001);
insert into empleados values(80807450,'Jean', 'Carlos','Tierradentro', 'ortiz', '10-15-2010',
'05-24-1982','S',3200000,'dprada[at]anonimo.com', 'M',1002,002);
insert into empleados values(1010198756,'Fernando', 'Camilo','Carrillo', 'Rojas', '09-13-
2012', '08-06-1989','S',2500000,' fcarrillo[at]anonimo.com', 'M',1003,003);
insert into empleados values(23799227,'Diana', 'Cecilia','Prieto', 'Parada', '03-10-2016',
'11-23-1974','D',5300000,' dprieto [at]anonimo.com', 'F',1004,004);

3. Generación de Consultas simples sobre las tablas de la base de datos3


Se actualizará el correo del registro 1 ya que se encuentra duplicado con el registro 3
update empleados set correo=' jtierradentro [at]anonimo.com' where id_empleados=
80807450;

3 Grabación Webconference Unidad 3: Fase 3 – Desarrollo. UNAD recuperado de https://goo.gl/MXRxER


Consulta de todos los registros de la tabla Departamento
select *from Departamento;
Consulta de todos los registros de la tabla Cargo
select *from Cargo;

Consulta de todos los registros de la tabla Empleados


select *from Empleados;

Consulta de los empleados de sexo Masculino = M


select *from Empleados where sexo='M';
Consulta de los empleados que ganan menos de 3200000
select *from Empleados where salario<3200000;

Consulta de empleados que ingresaron después del 2008


select *from Empleados where f_ingreso>'08-10-2008';

Se eliminara el registro del empleado con cedula 79508928


delete from empleados where id_empleados=79508928;
Consulta que el empleado con cedula 79508928 haya quedado eliminado.
select *from empleados;

Se eliminara el registro del cargo del rector


delete from cargo where nombre='Rector';

Consulta que el registro del cargo del rector haya quedado eliminado.
select *from cargo;

Se eliminará el registro del departamento de sistemas


delete from departamento where nombre='Sistemas';
Consulta que el registro del departamento de sistemas haya quedado eliminado.
select *from departamento;

Você também pode gostar