Home › Page › BD 2021-2022

BD 2021-2022

Pregatirea mediului de lucru

I) Prima varinta de lucru  (DOAR DACA NU PUTETI  SA VA INSTALATI PE CALCULATOR SERVERUL ORACLE 11g)

Exista posibilitatea de a lucra online, direct intr-un cont oracle pe platforma https://livesql.oracle.com

Va faceti cont, va logati, dupa care mergeti la Upload Script (dreapta sus), pentru a incarca scriptul sql aferent schemei bazei de date cu care veti lucra la orele de laborator.

Scriptul pentru crearea bazei de date este pe TEAMS MICROSOFT, in sectiunea FILES.

Dupa ce ati facut UPLOAD,  alegeti scriptul si dati RUN SCRIPT.

La final veti lucra utilizand optiunea SQL WORKSHEET (meniu dreapta).

II) A doua varianta de lucru  (CEA RECOMANDATA)

Mediul de lucru pentru testarea instructiunilor SQL este Oracle Database 11g Express Edition care se poate downloada de pe Teams, sectiunea Files (disponibil doar pentru studentii grupei FR anul I) si instalat pe calculatorul personal.

  • In timpul instalarii veti fi intrebat o parola. Aceasta este parola de administrare ce va fi utila daca vreti sa administrati serverul de la distanta. Local (pe calculatorul personal) aceasta parola va fi ignorata de catre SQL*Plus.
  • Dupa instalare accesati utilitarul Run SQL Command Line unde va veti conecta la serverul de SQL cu contul de administrator astfel:  

                                                                  sql >  CONNECT  SYS AS SYSDBA

                                     (cu parola)             sql>  sql

  • Dupa ce v-ati conectat cu contul de administrator este indicat sa va faceti un cont separat in care sa creati schema bazei de date. Scrieti urmatoarele comenzi exact in ordinea data:

sql>  CREATE USER STUDENT IDENTIFIED BY STUDENT DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP;

(crearea unui user cu numele STUDENT si parola STUDENT)

sql> ALTER USER STUDENT QUOTA 100M ON USERS;

sql> GRANT CONNECT TO STUDENT;

sql> GRANT CREATE TABLE TO STUDENT;

sql> GRANT CREATE VIEW TO STUDENT;

sql> GRANT CREATE SEQUENCE TO STUDENT;

sql> GRANT CREATE TRIGGER TO STUDENT;

sql> GRANT CREATE SYNONYM TO STUDENT;

sql> GRANT CREATE PROCEDURE TO STUDENT;

  • La urma va conectati cu contul Student:

sql>  CONN STUDENT  cu parola STUDENT

O lista completa cu comenzile SQL *PLUS gasiti aici: https://docs.oracle.com/database/121/SQPUG/toc.htm

 

Pentru lucrul la orele de laborator:

Pentru a rezolva exercitiile SQL veti lucra pe baza de date Employees.

SCRIPTUL PENTRU BAZA DE DATE EMPLOYEES il gasiti pe contul de TEAMS MICROSOFT in tabul FILES.

  • Daca folositi Oracle Database 11g Express Edition in contul STUDENT creat veti rula scriptul astfel:

           sql> @ < calea unde se afla fisierul >\<nume fisier>.sql    (comanda @ urmata de adresa locala unde ati salvat fisierul sql)

  • Pentru a verifica daca tabelele au fost create scrieti urmatoarea instructiune select:

           sql>  SELECT table_name FROM user_tables;

  • Pentru a verifica structura fiecarui tabel scrieti instructiuni de tipul:

         sql>  DESCRIBE <nume tabel>;                De exemplu: DESCRIBE employees;

  • Pentru a vedea inregistrarile dintr-un tabel scrieti:

         sql>  SELECT * from <nume tabel>;        De exemplu: SELECT * from employees;

 

Schema bazei de date este: SQL_Schema_ERD_and_Table_Designs

Baza de date cu care vom lucra la laborator contine urmatoarele tabele:

Employees (employee_id, job _id, department_id, manager_id …)

Departments (department_id, location_id, …)
Locations (location_id, country_id,…)
Countries (country_id, region_id, …)
Regions (region_id, …)

Jobs (job_id, …)
Job_history (employee_id, start_date, job_id, department_id, …)
Job_grades (…)

Identificati concret care este structura fiecarui tabel folosind instructiunea DESCRIBE si de asemenea legaturile dintre tabele prin identificarea FK-urilor.

Teme laborator 1:

(   Optional:  un mic rezumat despre SQL: Interogarea bazelor de date SQL – de citit )

1) Crearea-si-definirea-de-tabele – de citit

2) Introducere in SQL – de rezolvat exercitiile de la sfarsit


Teme laborator 2:

3) Functii

4) Joinuri

Solutii Exercitii Join

5) Subselect

Solutii exercitii Subcereri

 

Tema de laborator 3:

6) Securitatea-bazelor-de-date (de citit)

7) Tranzactii  (de citit)

 

Suport de curs: BD_Bacau_2019

Alte referinte: https://theswissbay.ch/pdf/Gentoomen%20Library/Databases/Molina%2CUllman%20-%20Database%20Systems%20The%20Complete%20Book.pdf