lucasmouraahere

Módulo 08

Sep 5th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 4.87 KB | None | 0 0
  1. INSERT INTO hr.departments (department_id, department_name, manager_id,
  2.                         location_id)
  3. VALUES (280, 'Public Relations 2', 100, 1700);
  4.  
  5. -- INSERINDO VALORES NULOS
  6. INSERT INTO hr.departments (department_id, department_name)
  7. VALUES (300, 'Purchasing Insert');
  8.  
  9. INSERT INTO hr.departments(290, 'Finance', NULL, NULL);
  10.  
  11. -- Usando Funções no INSERT
  12.  
  13. INSERT INTO hr.employees (employee_id, first_name,
  14.                           last_name, email, phone_number,
  15.                           hire_date, job_id, salary,
  16.                           commission_pct, manager_id,
  17.                           department_id)
  18. VALUES (600, 'Louis', 'Popp',
  19.         'LPOPP3', '11952912249',
  20.         SYSDATE, 'AC_ACCOUNT', 6900,
  21.         NULL, 205, 100);
  22.        
  23. INSERT INTO hr.employees (employee_id, first_name,
  24.                           last_name, email, phone_number,
  25.                           hire_date, job_id, salary,
  26.                           commission_pct, manager_id,
  27.                           department_id)
  28. VALUES (600, 'Louis', 'Popp',
  29.         'LPOPP3', '11952912249',
  30.         TO_DATE('05/09/2019', 'DD/MM/RRRR'), 'AC_ACCOUNT', 6900,
  31.         NULL, 205, 100
  32.        
  33. INSERT INTO hr.departments (department_id, department_name, location_id)
  34. VALUES (:department_id, :department_name, :location_id);
  35.  
  36. -- Inserindo vários registros
  37. CREATE TABLE RESPRESENTANTES_VENDA (
  38.     id          NUMBER(10) NOT NULL,
  39.     nome        VARCHAR(50) NOT NULL,
  40.     salario     NUMBER(10,2) NOT NULL,
  41.     comissao    NUMBER(10,2)
  42. );
  43.  
  44. INSERT INTO RESPRESENTANTES_VENDA
  45. (id, nome, salario, comissao)
  46. SELECT employee_id, last_name, salary, commission_pct
  47. FROM hr.employees
  48. WHERE job_id LIKE '%REP%';
  49.  
  50. SELECT * FROM RESPRESENTANTES_VENDA;
  51.  
  52. -- Segunda aula módulo 8
  53.  
  54. UPDATE hr.employees
  55. SET department_id = 70
  56. WHERE department_id = 113;
  57.  
  58. UPDATE hr.employees
  59. SET job_id = (SELECT job_id FROM
  60.               hr.employees
  61.               WHERE employee_id = 205),
  62.     salary = (SELECT salary FROM
  63.               hr.employees
  64.               WHERE employee_id = 205)
  65. WHERE employee_id = 114;
  66.  
  67. -- Terceira aula módulo 8
  68.  
  69. DELETE FROM hr.employees
  70. WHERE department_id (SELECT department_id
  71.                     FROM hr.departments
  72.                     WHERE department_name LIKE '%TESTE%');
  73.                    
  74. TRUNCATE TABLE RESPRESENTANTES_VENDA;
  75.  
  76. SELECT * FROM RESPRESENTANTES_VENDA;
  77.  
  78. -- Quarta aula módulo 8
  79.  
  80. --COMMIT, ROLLBACK, SAVEPOINT
  81.  
  82. UPDATE hr.employees
  83. SET salary = 25000
  84. WHERE employee_id = 150; -- AQUI ELE ALTEROU USANDO UM DML
  85.  
  86. SAVEPOINT update_1; -- AQUI ELE SALVOU O PONTO ATÉ O COMANDO DML ACIMA
  87.  
  88. DELETE FROM hr.employees
  89.  WHERE department_id = 280; -- AQUI ELE DELETOU UM FUNCIONÁRIO
  90.  
  91. ROLLBACK TO update_1; -- AQUI ELE DESFEZ TUDO QUE FOI FEITO DEPOIS DO
  92.                         -- SAVE POINT
  93.  
  94. COMMIT; -- AQUI ELE SALVOU A PARTIR DO SAVEPOINT
  95.  
  96. -- Exercicios do Módulo 8
  97.  
  98. /* Crie um novo departamento com o próximo department_id da tabela departments,
  99. este departamento deve ter o nome de Exercicio, não deve conter um gerente e deve estar situado na cidade 1700.
  100. Para este exercício você deve declarar todas as colunas da tabela*/
  101.  
  102. INSERT INTO hr.departments (department_id, department_name
  103.                             manager_id, location_id)
  104. VALUES (280, 'Exercicio', NULL, 1700)
  105.  
  106. /*A Informação inserida no exercício 01 deve ser atualizada e agora ela o novo departamento inserido deve-se chamar "Exercícios 08"*/
  107.  
  108. UPDATE hr.departments
  109. SET department_name = 'Exercício 08'
  110. WHERE department_id = 290';
  111.  
  112. /* Insira um registro novo na tabela employees com o id de 1234 e com o primeiro nome que deve ser composto com a primeira letra do primeiro nome e
  113. as 3 últimas letras do sobrenome do funcionário 100, o seu sobrenome deve ser o mesmo do funcionário 100, seu e-mail deve ser "EMAIL123",
  114. seu telefone deve ser 1, sua data de admissão deve ser a data atual, o JOB ID, deve ser o mesmo do funcionário 100, seu salário deve ser 10000,
  115. ele não deve possuir comissão e o seu gerente deve ser o employee_id do funcionário 100, e o seu departamento deve ser o código do novo departamento.
  116. As colunas não devem ser declaradas nessa instrução.*/
  117.  
  118. INSERT INTO hr.employees
  119.                (SELECT
  120.                 1234, SUBSTR(first_name, 1, 1) || SUBSTR(last_name, 2, 3),
  121.                 last_name,  'EMAIL123', 1, SYSDATE,
  122.                 job_id, 10000, NULL, employee_id, 280)
  123. FROM hr.employees
  124. WHERE employee_id = 100;
  125.  
  126. /* Deletar todos os funcionários do novo departamento criado no Exercício 01, Obs: Deve-se usar subquery para fazer este exercício*/
  127.  
  128. DELETE FROM hr.employees
  129. WHERE department_id (SELECT department_id
  130.       FROM hr.employees
  131.       WHERE department_id = 280);
  132.  
  133. /*Todas as informações feitas até aqui não devem ser confirmadas, escreva o comando que faz isso.*/
  134.  
  135. ROLLBACK;
Add Comment
Please, Sign In to add comment