Home › Page › SGBD 2019

SGBD 2019

Pagina dedicata laboratorului de SGBD – 2019

I) Pregatirea mediului de lucru

In cadrul acestui laborator veti lucra cu PL/SQL -un limbaj de scripting ce poate fi executat direct de către serverul Oracle SQL (a fost dezvoltat de către Oracle la sfârşitul anilor ’80 special pentru a ajuta limbajul SQL să devină mai complex).   

Mediul de lucru pentru testarea instructiunilor SQL este

1) Oracle Database 11g Express Edition ca și server SQL și

2) un IDE specializat pentru PLSQL: SQL Developer.

 

1)  Pentru instalarea Oracle 11g se poate face downloada de aici: http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html  si instalat pe calculatorul personal.
Pentru download aveti nevoie de un cont creat pe situl-ul Oracle.

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 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:  CONN SYS AS SYSDBA cu parola 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:

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

(crearea unui user cu numele STUDENT si parola STUDENT)

ALTER USER STUDENT QUOTA 100M ON USERS;

GRANT CONNECT TO STUDENT;

GRANT CREATE TABLE TO STUDENT;

GRANT CREATE VIEW TO STUDENT;

GRANT CREATE SEQUENCE TO STUDENT;

GRANT CREATE TRIGGER TO STUDENT;

GRANT CREATE SYNONYM TO STUDENT;

GRANT CREATE PROCEDURE TO STUDENT;

La urma va conectati cu contul Student:  CONN STUDENT  cu parola STUDENT

2) Pentru instalarea SQl Developer și modul de conectare la baza de date Oracle:

II) Pentru lucrul la orele de laborator:

Pentru inceput o recapitualare din SQL: PLSQL_l1 PLSQL_l2 PLSQL_l3 PLSQL_l4

Vom lucra cu  urmatoarele scheme de baze de date:  SQL_Schema_ERD_and_Table_Designs

Scriptul pentru crearea bazei de date este:  PLSQL_Schema. Deschideti acest script in SQL Developer si rulati-l.

Mini tutorial PLSQL    +  Trigger

Teme laborator:

Tema_1_PL/SQL

Tema 2 PL/SQL

tabela Evaluare poate avea valorile:

ID      Nume_Student     Nume_curs    Nota     Data

1         Ionescu                    SGBD               7           30.03.2019

2         Popescu                   SGBD              8           30.03.2019

3         Angelescu                SGBD              9           20.03.2019

4         Mirel                        SGBD             10           30.03.2019

Tema 3 PL/SQ

Tema 3 revolvata (+ plus imbunatatiri)  Tema 3 Bacau 2019

Exercitiu:

Construiti o tabela cu utilizatori avand urmatoarele campuri: ID (pk), nume, prenume, data_nastere. Construiti o tabela zodiac in care treceti datele de inceput si de sfarsit a fiecarei zodii impreuna cu denumirea zodiei. Utilizand aceasta tabela si tabela utilizatori, afisati distributia pe zodii a utilizatorilor (numarul de utilizatori pe zodie).

drop table utilizatori;
create table utilizatori(
id number(10) not null primary key,
nume varchar2(30) ,
prenume varchar2(30),
data_nastere date
)

drop table zodiac;
create table zodiac(
id number(10) not null primary key,
nume_zodie varchar2(30) ,
data_inceput varchar2(10),
data_sfarsit varchar2(10)
)

insert into zodiac values(1,’berbec’, ’21-03′, ’20-04′);
insert into zodiac values(2,’taur’, ’21-04′, ’21-04′);
insert into zodiac values(3,’gemeni’, ’22-05′, ’21-06′);
insert into zodiac values(4,’rac’, ’22-06′, ’22-07′);
insert into zodiac values(5,’leu’, ’23-07′, ’22-08′);
insert into zodiac values(6,’fecioara’, ’23-08′, ’21-09′);
insert into zodiac values(7,’balanta’, ’22-09′, ’22-10′);
insert into zodiac values(8,’scorpion’, ’23-10′, ’21-11′);
insert into zodiac values(9,’sagetator’, ’22-11′, ’20-12′);
insert into zodiac values(10,’capricorn’, ’21-12′, ’19-01′);
insert into zodiac values(11,’varsator’, ’20-01′, ’18-02′);
insert into zodiac values(12,’pesti’, ’19-02′, ’20-03′);

–commit;

Tema 4 PL/SQL

TEMA 4 – rezolvare

Tema 5

Tema 5 rezolvata

Exercitii functie si triggere 2019