Sunteți pe pagina 1din 9

Proiectarea i implementarea unei baze de date relaionale destinate gestiunii

informatizate a datelor despre clienii unui hotel


Bazele de date relaionale sunt un tip de baze de date n care datele, vzute ca i
atribute ale entitilor reale, sunt socate n tabele i sunt legate ntre ele prin relaii. Acest
mod de structurare a datelor, bazat pe legturi ntre date, permite eliminarea redundanei,
astfel nct stocarea i, mai ales, modificarea unei informaii se face ntr-un singur loc;
din punct de vedere funcional, aceast structur permite regsirea, filtrarea, ordonarea i
agregarea datelor ntr-un timp foarte scurt.
n contextul hiper-concurenei existente n industria ospitalitii, performanele
unui hotel sunt condiionate de modul n care managerul acestuia reuete s integreze
eficient noile tehnologii ale informaiei i comunicaiilor n sistemul de Business
Intelligence.
Am considerat oportun proiectarea unei baze de date relaionale pentru a
evidenia avantajele sale n managementul performant al unui hotel. Structura bazei de
date este generat de interconectarea a patru tabele, pe care le-am denumit: Turiti,
Rezervri, Camere ocupate i Carduri de loialitate.
n cadrul tabelului Turiti (figura nr. 3), am definit cheia primar cod turist,
iar celelalte cmpuri reflect principalele informaii referitoare la clienii unui hotel

(nume, prenume, adres, ora, telefon, e-mail), care pot fi valorificate prin intermediul
unor campanii de marketing personalizate; de asemenea, am inclus un cmp puncte de
loialitate, care permite o ierarhizare a clienilor n funcie de rezervrile lor trecute i
evideniaz aportul lor la profitul hotelului.

Figura nr. 3 Cmpurile alocate tabelului Turiti din structura bazei de date
relaionale
Dezvoltarea relaiilor cu clienii reprezint o strategie de succes a unui hotel, iar
cardurile de loialitate constituie instrumentele de fidelizare ale acestora; n acest sens, am
configurat n cadrul bazei de date relaionale un tabel Carduri de loialitate, care
conine codul fiecrui turist (cheie primar), tipul de card n funcie de rezervrile
anterioare (Silver, Gold i Platinum, beneficiile asociate deinerii acestor carduri i
perioada lor de valabilitate. (figura nr. 4)

Figura nr. 4 Cmpurile alocate tabelului Carduri de loialitate din structura bazei de
date
Managerii hotelurilor se confrunt cu urmtoarea problem: depozitarea i
gestiunea unui volum mare de date, referitoare la disponibilitatea camerelor, tarifele pe
fiecare tip de camer i rezervrile turitilor. Programele de rezervare au fost dezvoltate
ca sisteme interne de control pentru performana hotelurilor, fiind utilizate de ctre
personalul lor de rezervare pentru a monitoriza disponibilitatea locurilor mai eficient.
Tabelul Rezervri are alocate urmtoarele cmpuri: cod rezervare care
reprezint cheia primar, numrul camerei, codul turistului, data rezervrii, numrul de
zile de cazare i modalitatea de rezervare. (figura nr. 5) Accesarea unui astfel de tabel
destinat rezervrilor de camere din baza de date relaional permite reducerea timpului

necesar ageniilor de turism de a gsi informaiile solicitate de clieni, oferind acces


instantaneu la ofertele de preuri practicate de hoteluri. Modalitatea de rezervare aleas de
fiecare client (website-ul hotelului, website-uri specializate n rezervri on-line, agenii de
turism, etc.) furnizeaz decidenilor unui hotel informaii despre preferinele acestuia
legate de accesibilitatea ofertelor.

Figura nr. 5 Cmpurile alocate tabelului Rezervri din structura bazei de date
n cadrul tabelului Camere ocupate, cmpul numr camer este considerat
cheie primar, n timp ce inserarea codului alocat fiecrui turist va permite realizarea
legturilor dintre tabele. De asemenea, am considerat necesar includerea urmtoarelor
cmpuri cu informaii relevante pentru managementul bazei de date: categoria camerelor
(single, double, apartament, lux), tariful practicat de hotel n funcie de categoria camerei,
precum i data sosirii respectiv data plecrii turitilor (check-in check out). (figura nr.
6

Figura nr. 6 Cmpurile alocate tabelului Camere ocupate din structura bazei de
date
Cheile primare setate n cele patru tabele care compun structura bazei de date (cod
turist, cod rezervare, numr camer) permit realizarea legturilor dintre tabele, n cadrul
opiunii Relationships din meniul Tools al SGBD-ului Microsoft Access. (figura nr. 7)

Figura nr. 7 Editarea legturilor dintre tabelele bazei de date relaionale


n momentul proiectrii legturilor dintre tabele, am optat pentru relaii de tip
one-to-many, care sunt cele mai flexibile, deoarece apar atunci cnd o singur
nregistrare din primul tabel poate fi n relaie cu o mai multe nregistrri dincel de-al
doilea tabel, dar o singur nregistrare din al doilea tabel este n relaie numai cu o
singur nregistrare din primul tabel.
Realizarea legturilor faciliteaz procesele de structurare a informaiilor din mai
multe tabele ale bazei de date relaionale. Spre exemplu, accesnd tabelul Camere
ocupate, care a fost legat prin cheia primar Numr camer de tabelul rezervri,
putem vizualiza pentru fiecare camer a hotelului, codul rezervrii, data rezercrii,
numrul de zile de cazare precum i modalitatea de rezervare, fr a fi necesar
proiectarea i lansarea n execuie a unei interogri SQL. (figura nr. 8)

Figura nr. 8 Afiarea informaiilor din dou tabele n urma realizrii legturilor dintre
ele
Cele mai performante instrumente de gestiune a unei baze de date sunt
interogrile, care, pe lng regsirea datelor n funcie de criteriile stabilizate de utilizator,
efectueaz i operaii complexe privind actualizarea i administrarea bazei de date.
Limbajul SQL permite o comunicare complex i rapid a utilizatorului cu bazele
de date, n funcie de cerinele i restriciile acestuia, avnd n vedere att aspectele de
definire, interogare, manipulare a datelor, procesare a tranzaciilor, ct i caracteristicile
complexe privind integritatea informaiilor, cursoarele derulante sau jonciunile externe.
Sistemul de gestiune a bazelor de date ACCESS accept utilizarea limbajului de
interogare SQL pentru realizarea interogrilor. Cu toate c existena tehnicii grafice QBE
(Query by Example) permite proiectarea facil a unor interogari n care informaia
definit pe grila QBE este automat transformat ntr-o instruciune SQL, vom proiecta i
lansa n execuie n cadrul bazei de date relaionale cinci exemple de interogri complexe
utiliznd instruciuni SQL, care prezint avantajul major c pot fi utilizate indiferent de
SGBD-ul utilizat.
Prima interogare realizat n cadrul bazei de date a hotelului evideniaz turitii
care au rezervat camere prin intermediul website-ul hotelului. Cmpurile care fac obiectul
interogrii sunt reprezentate de cod turist, nume i prenume client din tabelul Turiti i
modalitate rezervare din tabelul Rezervri. Aceast interogare compus a impus inserarea
clauzei INNER JOIN pentru a releva legtura dintre cele dou tabele dup cheia primar
cod turist. Pentru a scrie interogarea SQL, este necesar ca din meniul View utilizatorul s

opteze pentru modul de vizualizare SQL View. n fereastra care apare se vor tasta
instruciunile SQL specifice, respectnd sintaxa corespunztoare; interogarea SQL Access
creat se poate lansa n execuie n dou moduri: prin utilizarea butonului din bara Query
Design sau prin opiunea Run, din meniul Query. Sintaxa instruciunii SQL este
prezentat n figura 9.a, n timp ce rezultatul interogrii poate fi vizualizat n figura 9.b.

Figura nr. 9.a Interogare privind numele turitilor care au rezervat camere pe websiteul hotelului

Figura nr. 9.b Rezultatul interogrii privind numele turitilor care au rezervat camere
pe website-ul hotelului
A doua interogare pe care am realizat-o n cadrul bazei de date relaionale se
refer la determinarea veniturilor ncasate de hotel pe fiecare camer ocupat prin
nmulirea valorilor din cmpurile tarif i numr zile cazare din tabelele camere ocupate
respectiv rezervri. Clauza INNER JOIN a fost aplicat pentru a pune evidena legturii
dintre cele dou tabele, pe baza cheii primare numr camer. Sintaxa instruciunii SQL
specifice acestei interogri este relevat n figura 10.a, n timp ce rezultatul interogrii
poate fi vizualizat n figura 10.b.

Figura nr. 10.a Interogare destinat determinrii veniturilor ncasate de hotel

Figura nr. 10.b Rezultatul interogrii privind determinarea veniturilor ncasate de


hotel
A treia interogare are ca obiectiv evidenierea clienilor care au primit carduri de
loialitate de tip GOLD din partea departamentului de relaii cu clienii al hotelului.
ntruct ntre tabelele turiti i carduri de loialitate nu exist o legtur direct prin
intermediul unei chei primare, aceast interogare a necesitat transformarea tabelului
rezervri ntr-un pivot, fiind legat att de tabelul turiti ct i de tabelul carduri de
loialitate prin cheia primar cod turist. Sintaxa instruciunii SQL este prezentat n figura
11.a, n timp ce rezultatul interogrii poate fi vizualizat n figura 11.b.

Figura nr. 11.a Interogare destinat evidenierii clienilor hotelului care au


primit carduri de loialitate de tip GOLD

Figura nr. 11.b Rezultatul Interogrii destinate evidenierii clienilor hotelului


care au primit carduri de loialitate de tip GOLD
Bazele de date sunt metodele preferate de stocare a informaiilor n cazul folosirii
multi-utilizator pe scar larg a resurselor, iar actualizarea informaiilor reprezint un
factor esenial. A patra interogare va avea ca efect actualizarea informaiilor din tabelul
turiti, cu ajutorul comenzii SQL UPDATE. Presupunem c unul dintre clienii hotelului
a realizat rezervri n ultima perioad de timp, fapt care a generat creterea numrului
punctelor de loialitate la valoarea 300. Pentru a realiza aceast actualizare, vom utiliza
instruciunea SET care va aloca valoarea noului punctaj cmpului puncte loialitate,
innd cont de codul clientului. Sintaxa instruciunii SQL este prezentat n figura 12.a, n
timp ce rezultatul interogrii poate fi vizualizat n figura 12.b.

Figura nr. 12.a Interogare privind actualizarea punctelor de loialitate


acumulate de un client al hotelului

Figura nr. 12.b Rezultatul interogrii privind actualizarea punctelor de loialitate


acumulate de un client al hotelului (cod turist 127)
Ultima interogare aplicat bazei de date relaionale urmrete includerea unui
cmp suplimentar n tabelul rezervri, pe care-l vom denumi confirmare rezervare; n
acest scop, vom utiliza clauza SQL ALTER TABLE i instruciunea ADD. Sintaxa
instruciunii SQL este prezentat n figura 13.a, n timp ce rezultatul interogrii poate fi
vizualizat n figura 13.b.

Figura nr. 13.a Interogare destinat inserrii cmpului confirmare rezervare


n tabelul Rezervri

Figura nr. 13.b Rezultatul interogrii destinate inserrii cmpului confirmare rezervare
n tabelul Rezervri

S-ar putea să vă placă și