Exercicios pl/sql
--na tabela temp_emp (criar a tabela) os dados:
--LAST_NAME antigo e novo, cargo, data da atualização e código do usuário que realizou tal
--operação.
DROP TABLE TEMP_EMP;
CREATE TABLE TEMP_EMP(
LAST_NAME VARCHAR2(25),
JOB_ID VARCHAR2(10),
HIRE_DATE DATE,
EMPLOYEE_ID NUMBER(10));
CREATE OR REPLACE TRIGGER PROVA_EMP
BEFORE UPDATE OF LAST_NAME, JOB_ID, HIRE_DATE, EMPLOYEE_ID ON EMPLOYEES
--EM NÍVEL DE LINHA;
FOR EACH ROW
BEGIN
INSERT INTO TEMP_EMP VALUE(:old.LAST_NAME, :new.LAST_NAME, :new.job_id, :new.hire_date, :new.employee_id);
END ;
/
--2) Crie uma view de nome v_func que retorne os seguintes dados
--o nome e sobrenome do funcionario (FIRST_NAME E LAST_NAME)da tabela de EMPLOYEES, FIRST_NAME E LAST_NAME - OK
--o nome do departamento (DEPARTMENT_NAME)tabela DEPARTMENTS, DEPARTMENT_NAME - OK
--o nome da cidade (CITY) da tabela LOCATIONS, CITY - OK
--o nome do pais (COUNTRY_NAME) da tabela COUNTRIES, COUNTRY_NAME - OK
--o nome da regiao (REGION_NAME) da tabela REGIONS, REGION_NAME - OK
--e o titulo do cargo (JOB_TITLE) da tabela JOBS JOB_TITLE - OK
--dos funcionários que possuem o último nome LAST_NAME iniciando com a letra A
DROP VIEW V_FUNC;
/
CREATE VIEW V_FUNC AS
SELECT EMPREGADO.FIRST_NAME, EMPREGADO.LAST_NAME, DEPARTAMENTO.DEPARTMENT_NAME, CIDADE.CITY, PAIS.COUNTRY_NAME, REGIAO.REGION_NAME, CARGO.JOB_TITLE
FROM EMPLOYEES EMPREGADO, DEPARTMENTS DEPARTAMENTO, LOCATIONS CIDADE, COUNTRIES PAIS, REGIONS REGIAO, JOBS CARGO
WHERE UPPER(LAST_NAME) LIKE UPPER('A%');
/
--3) Faça uma procedure de nome [p_cadastro] para cadastrar todos os dados
--na tabela de