Nerviie

dase de bados

May 2nd, 2019
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 1.96 KB | None | 0 0
  1. SHOW DATABASES;
  2. create database emp;
  3. use emp;
  4.  
  5. CREATE TABLE empre (
  6. numero int PRIMARY KEY,
  7. nome varchar(255) NOT NULL,
  8. salario int NOT NULL,
  9. datanas date NOT NULL,
  10. check (numero > 0)
  11. );
  12.  
  13. INSERT INTO empre (numero, nome, salario,datanas)
  14. values (1,'emp1',900,'2000-11-20');
  15. INSERT INTO empre (numero, nome, salario,datanas)
  16. values (2,'emp2',900,'2001-12-30');
  17. INSERT INTO empre (numero, nome, salario,datanas)
  18. values (3,'emp3',5000,'2000-06-30');
  19. INSERT INTO empre (numero, nome, salario,datanas)
  20. values (4,'emp4',1000,'1999-09-23');
  21. INSERT INTO empre (numero, nome, salario,datanas)
  22. values (5,'emp5',5500,'1998-05-23');
  23. INSERT INTO empre (numero, nome, salario,datanas)
  24. values (6,'emp2',4000,'1997-03-01');
  25.  
  26. select *from empre;
  27.  
  28. CREATE VIEW nova1 AS SELECT *FROM empre WHERE salario>4500 WITH CHECK OPTION;
  29.  
  30. select * from nova;
  31. select * from nova1;
  32.  
  33. /*Salário Total num ano*/
  34.  
  35. delimiter $$
  36. CREATE PROCEDURE salario_anual3 ( in id_emp int)
  37. begin
  38.     select CONCAT ('O salário anual é ',salario*12) AS TOTAL
  39.         from empre where numero=id_emp;
  40. End$$
  41. delimiter ;
  42.  
  43. CALL salario_anual3 (1);
  44.  
  45. /*Maior Salário*/
  46.  
  47. delimiter $$
  48. CREATE PROCEDURE maximo()
  49. Begin
  50.     select max(salario) from empre;
  51. END$$
  52.  
  53. CALL maximo;
  54.  
  55.  
  56. /*CLASSIFICAR SALARIO*/
  57.  
  58. DELIMITER $$
  59.  
  60. CREATE FUNCTION empregado2(emp_tipo float)
  61. RETURNS VARCHAR(30)
  62.  
  63. BEGIN
  64.     declare tipo varchar(30);
  65.     if EMP_TIPO > 3000 THEN
  66.  SET TIPO ='Bom salario';
  67.     elseif(EMP_TIPO < 2000 and EMP_TIPO >= 1000) then
  68.         set TIPO= 'Salario +/-';
  69.     elseif(EMP_TIPO < 1000 and EMP_TIPO > 500) then
  70.         set TIPO= 'Mau Salario';
  71.     END IF;
  72. return (TIPO);
  73. END$$
  74. delimiter ;
  75.  
  76. select numero,nome,salario,empregado2(salario) from empre;
  77.  
  78. /*AUMENTAR O SALARIO*/
  79.  
  80. delimiter $$
  81. create procedure sal()
  82. Begin
  83.     declare a int;
  84.     set a=1;
  85.     while(a<=(select COUNT(*) FROM empre)) do
  86.         update empre
  87.         SET salario = salario
  88.         where numero = a;
  89.         set a=a+1;
  90.     end while;
  91. end$$
  92. delimiter ;
  93.  
  94. CALL sal();
Add Comment
Please, Sign In to add comment