Advertisement
icatalin

BD LABORATOR 10.12.2018

Dec 10th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.27 KB | None | 0 0
  1. --fisier de scripturi, seaprat ( File -> New -> Sql file )
  2. -- il copiem undeva in calculator si in grupa254 rulam calea scriptului (exemplu ex. 21)
  3. --ex 21 lab 7 in fila noua, file -> new sql file
  4. SELECT *
  5. FROM dept_cpi
  6. WHERE department_id = &&cod_dep;
  7.  
  8. UPDATE dept_cpi
  9. SET &coloana = &valoare_noua
  10. WHERE department_id = &cod_dep;
  11.  
  12. SELECT *
  13. FROM dept_cpi
  14. WHERE department_id = &cod_dep;
  15. ROLLBACK;
  16.  
  17. --lab 7
  18. --ex 18
  19. UPDATE emp_cpi ext
  20. SET email = substr(last_name,1,1) || nvl(first_name, '.')
  21. WHERE salary = (
  22.       SELECT MAX(salary)
  23.       FROM emp_cpi
  24.       WHERE department_id = ext.department_id
  25.       GROUP BY department_id);
  26. ROLLBACK;
  27.  
  28. --ex19
  29. UPDATE emp_cpi ext
  30. SET salary = (
  31.     SELECT avg(salary)
  32.     FROM emp_cpi
  33.     WHERE employee_id != 0)
  34. WHERE hire_date = (
  35.     SELECT MIN(hire_date)
  36.     FROM emp_cpi
  37.     WHERE department_id = ext.department_id);
  38.    
  39. --20
  40. UPDATE emp_cpi
  41. SET (job_id, department_id) = (
  42.     SELECT job_id, department_id
  43.     FROM emp_cpi
  44.     WHERE employee_id = 205)
  45. WHERE employee_id = 114;
  46.  
  47. --21
  48. @C:\Users\Student\Desktop\21.SQL;
  49.  
  50. --delete
  51. --ex 22
  52. DELETE FROM dept_cpi;
  53. WHERE department_id NOT IN (
  54.       SELECT department_id
  55.       SELECT nvl(department_id, 0)
  56.       FROM emp_cpi);
  57. ROLLBACK;
  58.  
  59. SAVEPOINT ex25;
  60. INSERT INTO dept_cpi(department_id, department_name)
  61. VALUES (312,'departament nou');
  62. INSERT INTO dept_cpi(department_id, department_name)
  63. VALUES (313,'departament nou2');
  64. ROLLBACK TO ex25;
  65. ROLLBACK;
  66.  
  67. --merge
  68. --ex31
  69. DELETE FROM emp_cpi;
  70. WHERE commission_pct IS NOT NULL;
  71.  
  72. MERGE INTO emp_cpi a
  73. USING employees e
  74. ON (a.employee_id = e.employee_id)
  75. WHEN matched THEN
  76.     UPDATE SET
  77.     a.email = e.email,
  78.     a.salary = e.salary,
  79.     a.department_id = e.department_id
  80. WHEN NOT matched THEN
  81.     INSERT (employee_id, last_name, hire_date, job_id, email)
  82.     VALUES (e.employee_id, e.last_name, e.hire_date, e.job_id, e.email)
  83.  
  84. ROLLBACK;    
  85.  
  86. --lab8
  87. --ex1
  88. CREATE TABLE angajati_cpi (
  89.           cod_ang NUMBER(4),
  90.           nume varchar2(20),
  91.           prenume varchar2(20),
  92.           email CHAR(15),
  93.           data_ang DATE,
  94.           job varchar2(15),
  95.           cod_sef NUMBER(4),
  96.           salariu NUMBER(8,2),
  97.           cod_dep NUMBER(4) );
  98.          
  99. DROP TABLE angajati_cpi;
  100.  
  101. --ex1b
  102. CREATE TABLE angajati_cpi (
  103.           cod_ang NUMBER(4) CONSTRAINT cod_ang_pk_cpi PRIMARY KEY,
  104.           nume varchar2(20) CONSTRAINT nume_not_null_cpi NOT NULL,
  105.           prenume varchar2(20),
  106.           email CHAR(15),
  107.           data_ang DATE,
  108.           job varchar2(15),
  109.           cod_sef NUMBER(4) NOT NULL,
  110.           salariu NUMBER(8,2),
  111.           cod_dep NUMBER(4) );
  112.  
  113. DROP TABLE angajati_cpi;
  114.  
  115. --ex1c
  116. CREATE TABLE angajati_cpi (
  117.           cod_ang NUMBER(4),
  118.           nume varchar2(20),
  119.           prenume varchar2(20),
  120.           email CHAR(15),
  121.           data_ang DATE,
  122.           job varchar2(15),
  123.           cod_sef NUMBER(4),
  124.           salariu NUMBER(8,2),
  125.           cod_dep NUMBER(4),
  126.         CONSTRAINT cod_ang_pk_cpi PRIMARY KEY(cod_ang)
  127.         CONSTRAINT nume_not_null_cpi CHECK(nume IS NOT NULL)
  128.           );
  129.  
  130. --adaugare constrangere dupa crearea tabelului
  131. ALTER TABLE angajati_aga
  132. ADD CONSTRAINT salariu_not_null_cpi CHECK(salariu IS NOT NULL);
  133.          
  134. DROP TABLE angajati_cpi;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement