Sunteți pe pagina 1din 41

Sinteza Baze de date în marketing

Baze de date. Concepte fundamentale

În general în literatura specifică bazelor de date se operează cu următoarele concepte:


• Datele constau în material brut, evenimente primare, fapte, simboluri, numere, şiruri de
caractere, etc. Datele nu au un înţeles de sine stătător. Ele se pot obţine în urma unor
experimente, sondaje, pot fi colectate din diverse surse, nedefinite sau neomogene.

• Informaţiile se obţin prin prelucrarea datelor şi găsirea relaţiilor, legaturilor dintre acestea.
Informatiile au un înţeles şi sunt integrate într-un context. Datele organizate şi prezentate
într-un mod sistematic pentru a sublinia sensul lor devin informaţii. Altfel spus, informaţiile
sunt date prelucrate capabile de a produce cunoştinţe noi, se referă la obiecte , procese,
fenomene, locuri, situaţii etc.

• Cunoştinţele sunt colecţii de date, informaţii, adevăruri şi principii învăţate, acumulate de-
a lungul timpului. Informaţiile despre un subiect reţinute şi înţelese, folosite în luarea de
decizii, şi care formează judecăţi şi opinii devin cunoştinţe. Cu alte cuvinte, cunoştinţele
apar în momentul utilizării informaţiei.

Pentru obţinerea informaţiilor se desfăşoară un set de activităţi


- Identificarea surselor de informaţie şi culegerea datelor
- Pregătirea datelor ce presupune: codificare, clasificare, conversie, selectare
- Prelucrarea datelor
- Stocarea datelor în vederea utilizării lor
- Extragerea rezultatelor prelucrării datelor/raportarea informaţiilor către beneficiarii
▪ Totalitatea resurselor materiale, umane şi financiare utilizate în cadrul unui proces
informaţional având ca scop asigurarea legăturii dintre sistemul decizional şi cel operaţional şi
obţinerea informaţiilor poartă denumirea de sistem informaţional. Sistemul informaţional este
deci reprezentat de totalitatea metodelor, procedurilor şi mijloacelor, folosite în procesul

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

informaţional şi poate fi definit ca un ansamblu organizat şi integrat de operaţii de culegere,


transmitere, prelucrare, sistematizare, analiză şi păstrare, difuzare şi valorificare a informaţiilor.
▪ Dacă în cadrul procesului informaţional prelucrarea datelor se face cu ajutorul calculatorului
atunci sistemul informaţional se numeşte sistem informatic.
▪ Colecţia de date reprezintă un ansamblu de date care se referă la acelaşi fenomen, obiect sau
situaţie. În cadrul componentelor colecţiei se pot stabili relaţii care să faciliteze prelucrarea
datelor şi obţinerea informaţiilor.
▪ Structura de date reprezintă o colecţie de date pe care s-au stabilit anumite relaţii şi un
mecanism de selecţie şi identificare a componentelor sale. Accesul la componentele structurii
de date este un element foarte important în regăsirea informaţiei şi poate fi de două feluri:
o secvenţial : presupune parcurgerea tuturor datelor situate înaintea celei care urmează a
fi prelucrată
o direct : presupune existenţa unui mecanism care să determine direct poziţia datei ce
urmează a fi prelucrată.
Structurile de date pot fi omogene sau neomogene, în funcţie de tipul datelor conţinute în
structură. În funcţie de posibilitatea de a-şi modifica structura se întâlnesc structuri de date
dinamice sau statice. Operaţiile care pot fi executate asupra unei structuri de date sunt dependente
de mediul de programare utilizat. În general asupra unei structuri de date pot fi executate operaţii
precum: creare, populare, consultate, actualizare, sortare, scindare, concatenare, duplicare,
ştergere.
▪ Baza de date reprezintă un ansamblu de date integrat, între care există relații logice și o
descriere a acestor date, proiectat pentru a satisface necesitățile informaționale ale unei
organizații. Descrierea structurii poartă numele de dicţionar de date sau metadate şi creează o
interdependenţă între datele propriu-zise şi programe.
▪ Sisteme de gestiune a bazelor de date reprezintă un pachet de programe care permite
definirea, crearea, întreţinerea şi accesul controlat la baza de date.

Baza de date poate fi privită ca o colecţie de fişiere interconectate care conţin nucleul de date
necesare unui sistem informatic. Astfel, poate fi considerată drept un model al unor aspecte ale
realităţii unei companii, modelată prin intermediul datelor. Diferitele obiecte din cadrul realităţii
ce prezintă interes sunt denumite entităţi. Pentru aceste obiecte sunt achiziţionate şi memorate date

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

referitoare la diferite caracteristici ale entității numite atribute. Între entitățile identificate se
stabilesc relații.

Baza de date se constituie ca un ansamblu intercorelat de colecţii de date, prin care se realizează
reprezentarea unei realităţi.

O baza de date trebuie să asigure:


• abstractizarea datelor (baza de date fiind un model al realităţii),
• integrarea datelor (baza de date este un ansamblu de colecţii de date intercorelate, cu
redundanţă controlată),
• integritatea datelor (se referă la corectitudinea datelor încărcate şi manipulate astfel încât
să se respecte restricţiile de integritate),
• securitatea datelor (limitarea accesului la baza de date),
• partajarea datelor (datele pot fi accesate de mai mulţi utilizatori, eventual în acelaşi timp),
• independenţa datelor (organizarea datelor să fie transparentă pentru utilizatori, modificările
în baza de date să nu afecteze programele de aplicaţii).

Dacă datele provin direct din măsurători, iar informaţiile din prelucrarea şi prezentarea
acestora într-o formă care reprezintă, de exemplu, starea proceselor/ activităţilor la un
moment dat, cunoaşterea este o noţiune mai cuprinzătoare. Cunoaşterea presupune
înţelegerea proceselor şi activităţilor. Cunoaşterea trebuie să producă asocieri cauzale şi să
facă predicţii, care stau la baza unor decizii.

În concluzie, informaţiile validate devin cunoştinţe utilizabile de receptor. Trebuie spus


receptorului ceva ce nu îi este cunoscut şi care nu poate fi prevăzut. Dacă un mesaj sau
raport nu are aceste atribute, receptorul va primi date nu informaţii. Din punct de vedere al
teoriei comunicaţiilor, informaţia este un mesaj, un semnal ce reflectă starea unui sistem
sau a mediului în care acesta funcţionează şi care aduce receptorului un spor de
cunoaştere. Informaţia economică, prin datele furnizate, aduce un spor de cunoaştere relativ
la aspectele economice ale organizaţiei oferind elemente noi care vor fi utilizate în cadrul
acesteia.Informaţiile se obţin în urma prelucrării datelor.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Putem spune că orice informaţie este o dată, în schimb nu orice dată este o informaţie, ci
numai aceea care are pentru receptor valoare.

Informaţiile relevante sunt informaţiile care :

• Sporesc cunoştinţele,

• Reduc incertitudinile,

• Sunt utilizabile pentru scopul propus.

Valoarea informaţiei

Informaţia nu are valoare ea însăşi, valoarea derivă din utilizarea ei într-un anumit context.

Funcţii realizate de informaţii

În afară de funcţia generală de îmbunătăţire a cunoştinţelor, informaţiile asistă managerul


în mai multe moduri , incluzând:

• Reducerea incertitudinii: informaţiile relevante ajută în reducerea necunoaşterii;

• Ca un ajutor în monitorizare şi control: informaţiile produse despre performanţă,


extinderea planificării nivelurilor de performanţă, vor ajuta managerul să controleze
mai bine operarea;

• Ca mediu de comunicare: managerul are nevoie să ştie despre dezvoltare, planuri,


schimbări stânjenitoare şi aşa mai departe;

• Ca o memorie suplimentară: prin existenţa informaţiilor istorice despre


performanţă, tranziţii, rezultatele acţiunilor trecute şi deciziile disponibile prin
referiri;

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Ca ajutor în simplificare: prin reducerea incertitudinilor şi sporirea înţelegerii,


problemele şi situaţiile sunt simplificate şi devin mai controlabile.

Clasificarea informaţiilor

O clasificare a informaţiilor este făcută de Lucey[1995] în funcţie de:

▪ Sursă : interne, externe, primare, secundare, guvernamentale;

▪ Natură : cantitative, calitative, formale, informale;

▪ Nivel : strategic, tactic, operativ;

▪ Timp : istorice, prezent, viitor;

▪ Frecvenţă : continue (timp real), orare, zilnice, lunare, anuale;

▪ Utilizator : planificare, control, luarea deciziilor;

▪ Forma : scrise, orale, vizuale, senzoriale;

▪ Eveniment : la intervale planificate, ocazionale, la cerere;

▪ Tip : detaliat, sumare, totale, abstracte;

Baze de date relaţionale

Modelul relațional al bazelor de date se bazează pe conceptul matematic de relație. Relațiile


sunt prezentate fizic sub formă de tabel. Tabelele reprezintă colecții de elemente distincte
(înregistrări) cu proprietăți comune (câmpuri).
Modelul relațional nu este orientat spre sistemul de calcul, nu include regulile, structurile
și operațiile referitoare la implementarea fizică a unui sistem de baze de date. Se face astfel o
separare clară între aspectele fizice și cele logice ale bazei de date, iar operațiile de manipulare a
datelor pot fi privite ca o serie de operații de proiecție, filtrare, reuniune, intersecție asupra datelor
din tabele.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Modelului relațional este descris de următoarele noțiuni de bază


• Relație – tabel ce conține coloane sau câmpuri și rânduri sau înregistrări.
• Atribut – o coloana (câmp) a relației (tabelului), cu o anumită denumire.
• Domeniu – mulțimea de valori permise pentru unul sau mai multe atribute.
• Tuplu – rândul dintr-o relație.
• Grad – numărul de atribute (câmpuri) pe care le conține aceasta.
• Cardinalitate – numărul de tupluri conținute.
• Schema relației – denumirea, atribute.
• Null : lipsa valorii unui atribut (nu situația în care valoarea campului preț spre exemplu este
este 0 ci situația în care nu precizez o valoare)

În modelul relațional, relațiile stochează informații despre obiectele care vor fi reprezentate în
baza de date. Rândurile reprezintă tuplul (înregistrările), iar coloanele se referă la atributele relației.
Domeniul se referă la tipul, natura campurilor (numere naturale, numere intregi, reale, sir de
caractere, logic, data calendaristica si eventual ora, etc)
Exemplu de relație (tabel) și elemente componente.
Considerăm relația Produse_de_expediat

CodProdus DenumireProd Pret DataExpediere CST


1 Mouse 50 24/11/2019 False
2 Monitor 300 4/12/2019 True
3 Tastatura 100 20/12/2019 False
4 Laptop 2500 27/1/2020 True
5 Proiector 2000 2/11/2019 True
6 Imprimanta 350 14/2/2020 False

Atributele (campurile) relatiei (tabelului) sunt :


CodProdus DenumireProd Pret DataExpediere CST

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Gradul relației este 5


Cardinalitatea – numărul de tupluri conținute- este 6
Domeniul – mulțimea de valori permise pentru unul sau mai multe atribute- este în acest caz:
CodProdus număr natural
DenumireProd sir de caractere
Pret număr real pozitiv
DataExpediere dată calendaristică
CST (conditii speciale de transport) logic (Boolean) respectiv adevărat sau fals

Proprietățile relațiilor
• Tabelul (relatia) are o denumire distinctă ca orice mulțime.
• Fiecare atribut are o denumire disticntă
• Toate valorile unui atribut (camp) aparțin aceluiași domeniu (numeric, sir de
caractere etc)
• Ordinea atributelor nu este relevantă (ordinea în care apar campurile in tabel)
• Fiecare tuplu este distinct, nu există dubluri ale tuplurilor
• Ordinea tuplurilor nu relevantă (ordinea în care apar înregistrările în tabel)

Pentru identificarea unică, exactă a fiecărui tuplu dintr-o relație sunt utilizate cheile primare.
Deci cheia primară este un atribut (câmp) care identifică în mod unic fiecare înregistrare din tabel.

Cheia primară respectă următoarele principii:


• este obligatorie : fiecare relație (tabel) are exact o singură cheie primară care identifică
în mod unic fiecare tuplu (înregistrare)
• este unică pentru fiecare înregistrare
• este simplă sau compusă : o cheie primară cuprinde unul sau mai multe atribute ale
tuplului
• valoare unei chei primare nu poate fi vidă
• este stabilă : se schimbă foarte rar
• este nereutilizabilă : dacă se șterge un tuplu valoarea chei primare nu poate fi asociată
altui tuplu

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Prin cheie externă se înțelege un atribut (câmp) sau un set de atribute din cadrul unei relații
(tabel) care se potrivește cu cheia primară a altei relații (a altui tabel). Cheile externe stabilesc
legături între două relații.
Exemplu:
Considerăm relația Produse_de_expediat_adr

CodProdus DenumireProd Pret DataExpediere CST CodAdresa


1 Mouse 50 24/11/2019 False 100
2 Monitor 300 4/12/2019 True 200
3 Tastatura 100 20/12/2019 False 300
4 Laptop 2500 27/1/2020 True 400
5 Proiector 2000 2/11/2019 True 200
6 Imprimanta 350 14/2/2020 False 100

Considerăm relația Produse_adrese


CodAdresa Strada Numarul
100 Fabricii 34
200 Burdujeni 56
300 Barajul Uzului 67
400 M Eminescu 78

Pentru relația Produse_de_expediat_adr:


CodProdus reprezintă cheia primară
CodAdresa reprezintă cheia externă deoarece face legătura între cele două tabele

Noţiuni introductive SGBD Fox Pro.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Sunt prezentate în continuare câteva dintre comenzile FoxPro care permit crearea,
actualizarea (adăugarea, modificarea ştergerea) şi consultarea unei baze de date simple,
formată dintr-un singur tabel.

Toate comenzile descrise în continuare sunt introduse în fereastra de comenzi


(Command). Dacă această fereastră nu este vizibilă pe ecranul principal al aplicaţiei se
apasă combinaţia de taste CTRL+F2 sau se selectează din meniul Window opţiunea
Command Window.

După scrierea comenzilor în Command window, acestea sunt validate prin


apăsasrea tastei Enter.

Comenzile corect scrise se vor afişa cu culoarea albastră.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Fereastra de comenzi

Ecranul principal din FoxPro

Numele câmpurilor va fi o succesiune de caractere, neîntrerupte de caracterul spaţiu (Ex:


produs, nume, prenume, datan, sal, cant, starecivila, etc).

Tipul precizează natura datelor care se vor găsi în acel câmp (numerice, şiruri de caractere,
date de tip logic, dată calendaristică ş.a.)

Lungimea maximă este o caracteristică a câmpurilor care se referă la numărul maxim de


caractere care pot fi introduse în câmpul respectiv. În momentul în care s-a ajuns la această
lungime maximă se realizează trecerea automată la următorul câmp. Câmpurile de tipul

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

logic au lungimea maximă implicită 1 iar câmpurile de tipul dată calendaristică au implicit
lungimea maximă 8 (două caractere pentru zi, doua caractere pentru lună,doua caractere
pentru an – ultimele două cifre ale anului- precum şi două caractere pentru separarea zilelor
de lună şi a lunii de an. Ex: 23/11/19 ).

Se precizeazǎ astfel structura unui articol. Definirea structurii articolului constă în


descrierea pentru fiecare câmp în parte a caracteristicilor sale (nume, tip, lungime maximă).

La închiderea ferestrei se poate opta pentru introducerea înregistrărilor în acel moment sau
pentru introducerea ulterioară a acestora prin intermediul comenzii append . În acest ultim
caz se salvează numai structura articolului.

Toate înregistrǎrile din tabelul respectiv vor respecta aceastǎ structurǎ a articolului.

Crearea tabelelor, definirea structurii articolului, tipuri de date

Comanda Create

Comanda Create este utilizată pentru crearea unei baze de date.

Determină apariţia unei ferestre în care utilizatorul precizează numele noului tabel precum
şi caracteristicile fiecǎrui câmp (nume, tip, lungime maximǎ).

În privinţa tipului datele pot fi:

• Tipul şir de caractere (character) precizează că valorile din acel câmp sunt de tipul
alfanumeric. Valorile introduse în aceste câmpuri vor fi interpretate ca succesiuni
de simboluri din codul ASCII. Introducerea valorii 1256 nu are în acest caz
semnificaţia unui număr ci este pur şi simplu o înşiruire de caractere:1,2,5 şi 6.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Tipul numeric (numeric,integer,float).Datele vor fi numere. În acest caz se poate


preciza şi numărul de zecimale. Se realizează validarea automată a datelor introduse
în câmpuri de acest tip (nu se poate introduce într-un câmp declarat de tipul numeric
valoarea ”Popescu”)

• Tipul logic (logical). În câmpurile declarate de tip logic pot fi introduse numai
valorile logice de adevărat (TRUE) sau fals (FALSE). În FoxPro valoarea logică de
adevăr se reprezintă prin litera .T. iar valoarea logică de fals se reprezintă prin litera
.F. (ambele cuprinse între două puncte). Se realizează validarea automată (se
acceptă numai T sau F), iar lungimea maximă pentru valorile din aceste câmpuri
este implicit 1.

• Tipul dată calendaristică (date). Valorile introduse se referă la o astfel de dată. În


funcţie de setări se va utiliza un anumit format de dată (ZZ/LL/AA, ZZ-LL-AA,
LL/ZZ/AA ş.a.). Şi în acest caz se realizează validarea automată a datelor introduse
(pentru lună se acceptă numai valori întregi cuprinse în intervalul 1-12, pentru zi se
pot introduce numai valori cuprinse în intervalul 1-31). Se ţine cont şi de numărul
zilelor din luna respectivă (data 30/02/2019 nu este validată).În mod similar se
utilizează şi tipul dată calendaristică şi oră . (DateTime)

După introducerea comenzii CREATE (în Command window) se cere un nume pentru
tabelul care urmează a fi creat. Tabelul a fost denumit PRODUSE. Devine vizibil apoi
ecranul în care este precizată structura articolului.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

După precizarea structurii articolului se selectează butonul OK. Utilizatorul este întrebat
daca doreşte să introducă primele înregistrări în baza de date. Dacă se răspunde afirmativ
apare un ecran în care sunt introduse primele înregistrări în baza de date.

Actualizări (adăugare, ştergere, modificare)

Comenzi şi clauze utilizate în consultarea şi actualizarea bazelor de date.

Comanda List

Comanda list permite vizualizarea înregistrǎrilor din baza de date.Acestea vor fi afişate în
fereastra principală a aplicaţiei, simulându-se modul de lucru text. (ecranul este împărţit în

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

linii şi coloane, putnd fi afişate caractere din codul ASCII). Dacă există un număr mare de
înregistrări în baza de date vor rămâne vizibile pe ecran numai ultimele înregistrări. Pentru
a evita această situaţie listarea se poate redirecţiona spre un fisier text sau spre imprimantă,
prin intermediul clauzelor to file sau to printer. (Ex: list to file <nume_fişier> sau list to
printer)

Se pot vizualiza, prin utilizarea clauzei for, numai acele întegistrǎri care corespund unui
anumit criteriu (list for <nume_câmp> <criteriu>),Ex:

list for sal<1500

list for nume=”Ion”

list for starecivila=.T.

Listarea poate fi filtrată după mai multe criterii prin utilizarea şi-ului logic (AND) respectiv
sau logic (OR)

Exemple:

list for denprod=”calculator” and pretv < 2000

list for denprodus =”imprimanta” or pretv <500

Se pot afişa numai anumite câmpuri din baza de date prin utilizarea clauzei fields . Sintaxa
în acest caz este:

list fields <nume_câmp1>, <nume_câmp2>,…,<nume_câmp_n>

Prin folosirea acestei clauze se controlează de asemenea şi ordinea în care sunt afişate
câmpurile.

Înregistrările marcate pentru ştergere logică vor fi evidenţiate cu caracterul „*”

Pentru formatarea câmpurilor declarate de tipul şir de caractere se pot folosi următoarele
funcţii:

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Funcţia upper , având sintaxa upper(<nume_câmp>).Funcţia primeşte ca parametru


un şir de caractere şi returnează acel şir scris cu litere mari.

• Funcţia lower, având sintaxa lower(<nume_câmp>).Funcţia primeşte ca parametru


un şir de caractere şi returnează acel şir scris cu litere mici.

• Funcţia proper, având sintaxa proper(<nume_câmp>). Funcţia primeşte ca


parametru un şir de caractere şi returnează acel şir formatat astfel: primul caracter
de la începutul fiecărui cuvănt este transformat în literă mare, restul caracterelor
fiind transformate în litere mici .

Comanda Browse

• Se afişază înregistrǎrile din baza de date sub forma unui tabel

• Permite marcarea înregistrǎrilor pentru ştergere logicǎ

• Se poate utiliza împreunǎ cu clauzele for,fields semnificaţia acestora fiind cea


descrisă anterior.

• Modul de afişare al înregistrǎrilor se controlează prin intermediul clauzelor font si


style

Clauza font precizează tipul de caractere utilizat ( Times New Roman, Arial, etc) şi
dimensiunea acestora. (Ex: browse fields nume,sal font "arial",20 )

Clauza style este urmată de unul sau mai mulţi parametri (b,u sau i), având următoarea
semnificaţie:

B – înregistrările for fi afişate cu caractere îngroşate (bold)

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

U - subliniere (underline)

I – scrierea se realizează cu caractere înclinate (italic)

Exemplu: browse fields nume,sal style"bui" sau browse fields nume style"bi"

Cele două clauze se pot utiliza simultan.

Ex: browse fields nume,sal font "arial",20 style"bui"

Comanda permite şi modificarea înregistrǎrilor, pentu aceasta utilizându-se însa mai des
comanda edit.

Comanda se mai poate utiliza împreună cu clauza freeze. Această clauză specifică faptul
că putem modifica numai valorile dintr-un anumit câmp, restul câmpurilor fiind afişate fără
posibilitatea modificării. Sintaxa este în acest caz: browse freeze <nume_camp>

Pentru a marca una sau mai multe înregistrări pentru ştergere logică prin intermediul
comenzii browse se selectează (cu mouse-ul) celulele din stânga respectivelor înregistrări.
Pentru anularea marcării pentru ştergere logică se vor deselecta respectivele celule.

Acest mod de a marca înregistrări pentru ştergere logică este eficient numai în cazul în care
se marchează un număr mic de înregistrări care nu au o caracteristică comună. Ĭn caz contrar
se foloseşte comanda delete pentru marcare şi comanda recall pentru demarcare.

Actualizarea bazei de date. Comenzi legate de adǎugarea şi modificarea înregistrǎrilor.


Ştergerea logicǎ şi ştergerea fizicǎ a înregistrǎrilor.

Comanda Append

• Comanda permite adǎugarea de înregistrǎri la sfârşitul bazei de date.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Comanda determină aparitia unei ferestre care conţine denumirile câmpurilor. În


acest ecran (fereastră) se introduc înregistrările care se adaugă în baza de date.

• Înregistrǎrile vor respecte structura articolului(caracteristicile fiecǎrui câmp)

Comanda Delete

• Comanda realizează marcarea pentru ştergere logicǎ a înregistrǎrilor.

• Înregistrările nu sunt şterse fizic din baza de date, ele putând fi recuperate ulterior
prin comanda recall (sau prin comanda browse, prin comanda edit).

• În urma ştergerii logice a uneia sau mai multor înregistrări, înregistrările rămase în
baza de date nu sunt renumerotate.

• Se poate utiliza împreunǎ cu clauzele for şi all sintaxa fiind


delete for <nume_câmp> <criteriu>

În această situaţie vor fi marcate pentru ştergere logică numai acele înregistrări care
corespund criteriului.

Ex: delete for denprodus=”imprimanta”

Urmarea execuţiei acestei comenzi este ştergerea logică din baza de date a tuturor
înregistrărilor care au în câmpul denprodus valoarea (textul în acest caz) –”imprimanta”

Utilizarea clauzei all determinǎ marcarea pentru ştergere logicǎ a tuturor înregistrǎrilor din
baza de date:

delete all

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Înregistrările care sunt marcate pentru ştergere logică sunt evidenţiate prin prezenţa
caracterului „*” în cazul vizualizării conţinutului tabelului prin comanda list, sau printr-un
marcaj negru în cazul vizualizării înregistrărilor prin comanda browse sau comanda edit .

Comanda Recall

• Comanda permite demarcarea înregistrǎrilor marcate pentru ştergere logicǎ

• Se poate utiliza împreunǎ cu clauzele for şi all

• Sintaxa este: recall for <nume_câmp> <criteriu>. În această situaţie vor fi


demarcate acele înregistrări care corespund criteriului.

• Ex: recall for denprodus=”imprimanta”

• Utilizarea clauzer all determină demarcarea de la ştergere logică a tuturor


înregistrărilor marcate pentru ştergere logicǎ (cu delete sau browse)

• Ex: recall all

Comanda Pack

• Comanda realizează ştergerea definitivă (fizică) a înregistrărilor marcate pentru


ştergere logică.

• Înregistrările rămase în baza de date se renumerotează.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Practic se creează o nouă bază de date care conţine numai înregistrările care nu sunt
marcate pentru ştergere logică. SGBD copiază toate înregistrările marcate pentru
ştergere logica intr-un fişier temporar apoi este şters fişierul original, acţiune urmată
de redenumirea fişierului temporar cu numele fişierului original. Din acest motiv
nu este posibilă recuperarea înregistrărilor şterse.

Această acţiune de ştergere logică nu este realizată în următoarele situaţii:

• Nu există loc pe hard disk pentru crearea fişierului temporar

• In timpul procesului utilizatorul apasă tasta ESC.

Comanda Zap

• Comanda realizează ştergerea fizică, definitivă, a tuturor înregistrărilor din baza de


date.

• Se păstrează numai structura articolelor (caracteristicile fiecărui câmp)

• Comanda este echivalentă cu succesiunea de comenzi :

Delete all (sunt marcate pentru ştergere logică toate înregistrările din baza
de date)

Pack (sunt şterse fizic din baza de date înregistrările marcate pentru ştergere
logică)

Comanda Edit

• Se afişazǎ înregistrǎrile din baza de date sub forma unui tabel

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Permite editarea şi modificarea înregistrǎrilor din baza de date, precum şi marcarea


acestora pentru ştergere logică.

• Se poate utiliza împreunǎ cu clauzele for, fields semnificaţia acestora fiind cea descrisă
anterior. ( comanda list)

• Modul de afişare al înregistrǎrilor se controlează prin intermediul clauzelor font si style


(vezi comanda browse)

Noţiuni introductive SGBD Fox Pro. Partea II.

Alte comenzi FoxPro legate de exploatarea bazelor de date. Sortarea bazelor de date.

Comanda Calculate

Permite calcularea valorilor minime, maxime, calculul mediei sau a sumelor valorilor unor
câmpuri.

Comanda calculate se va utiliza împreună cu una dintre următoarele funcţii: min(), max(),
sum(), avg().

• Calculate Min(<nume_camp>) - returnează cea mai mică valoare a înregistrărilor


aflate în câmpul respectiv. Această valoare se afişează pe ecran sau este stocată într-
o variabilă. Câmpurile pot fi de tip numeric, şir de caractere, dată calendaristică, etc.

• Calculate Max(<nume_camp>) – returnează cea mai mare valoare a înregistrărilor


aflate în câmpul respectiv. Această valoare se afişează pe ecran sau este stocată într-
o variabilă. Şi în acest caz câmpurile pot fi de tip numeric, şir de caractere sau dată
calendaristică.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Calculate Sum(<nume_camp>) - returnează suma valorilor înregistrărilor aflate în


câmpul respectiv. Este necesar ca aceste înregistrǎri sǎ fie de tipul numeric.

• Calculate Avg(<nume_camp>)-în acest caz se va returna media aritmeticǎ a


valorilor din câmpul respectiv. Şi în acest caz este necesar ca aceste înregistrǎri sǎ
fie de tipul numeric.

În cazul în care se încearcă utilizarea datelor de tipul şir de caractere ca parametri pentru
funcţii care pot lucra numai cu tipul numeric se generează un mesaj de eroare.

Comanda use

Comanda USE permite închiderea respectiv deschiderea unei baze de date.

Sintaxa comenzii: USE <nume_baza_de_date>

Daca baza de date este cea activă în memorie ea va fi închisă.

Daca baza de date nu era cea activă în memorie ea va fi deschisa.

Observaţie: Toate comenzile se referă la baza de date activă în memorie; La un moment dat
putem avea o singură bază de date (tabel) activă în memorie;

Comanda clear

• Este şters conţinutul ecranului principal al aplicaţiei FOX PRO

• Nu sunt şterse comenzile din fereastra de comenzi.(Command window)

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Comanda nu afectează în nici un fel înregistrările din baza de date. (nu există nicio
legătură între comenzile legate de ştergerea înregistrărilor DELETE, PACK, ZAP
şi comanda CLEAR)

Comanda list structure

• Această comandă afişază pe ecranul principal al FOX PRO-ului informaţii legate


de baza de date activă (tabelul activ)

• Vor fi astfel afişate structura articolului (nume câmp, tip, lungime maximă.), va fi
afişat numărul de înregistrări din baza de date, ultima accesare a acestora, precum
şi calea spre baza de date.

Exemplu

Considerăm un tabel cu următoarea structură a articolului:

C1- sir de caractere, lungime maximă 3

C2- numeric, lungime maximă 2

C3- logic, , lungime maximă 1 (implicit)

Comanda list structure va afişa

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Comanda Display structure

Comanda are acelaşi rol cu list structure

Comanda sort

• Pentru a putea sorta elementele unei mulţimi este necesar ca pe mulţimea respectivǎ
să avem definită o relaţie de ordine.

• Sortarea presupune aranjarea elementelor respectivei mulţimi fie în ordine


crescătoare, fie în ordine descrescătoare.

• In cazul câmpurilor de tipul şir de caractere se va utiliza drept criteriu de sortare


reprezentarea caracterelor în codul ASCII.

• Ĩn cazul unui tabel (bază de date) sortarea presupune rearanjarea înregistrărilor în


funcţie de valorile unuia sau a mai multor câmpuri, aceste câmpuri putând fi sortate
atât crescător cât şi descrescător.

• In urma operaţiei de sortare se va crea o noua baza de date cu un nume diferit de


baza de date sortată.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Pentru a putea vizualiza rezultatul sortării este necesar să închidem baza de date
iniţială şi să deschidem noua bază de date creată în momentul sortării (aceste
operaţii vor fi realizate prin intermediul comenzii USE)

• Sintaxa comenzii SORT este urmatoarea:

SORT TO <baza_sortata> ON <nume-câmp1><parametru>, ..., <nume-câmp n>

1. <baza-sortată> reprezintă numele bazei de date care se creează în momentul sortării

2. <nume-camp 1, n> reprezintă câmpurile din baza de date iniţială după care se
realizează sortarea

3. <parametru> poate avea una din urmatoarele valori: /a, /d

/a = ASCENDING – se utilizează pentru sortarea crescǎtoare (aranjarea în ordine


crescatoare a valorilor din campul respectiv)

/d=DESCENDING – precizeaza ca sortarea se realizeaza în ordine descrescatoare a


valorilor din campul respectiv.

Daca nu este specificat nici unul din cei doi parametri sortarea se consodera implicita
crescătoare.

Exemplul 1

Se consideră baza de date cu următoarea structură a articolului:

C1- sir de caractere, lungime maximă 3

C2- numeric, lungime maximă 2

C3- tipul logic, lungime maximă 1 (implicit)

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Baza de date există pe hard disc şi este salvată cu numele de baza1. Se cere:

Crearea unei baze de date cu numele baza1s sortată crescător dupa valorile câmpului c1
(cel care conţine date de tipul şir de caractere). Iniţial baza1 (cea nesortată) conţine
următoarele înregistrări:

use baza1 (este deschisă baza nesortată)


sort to baza1s on c1/a (se creează baza1s sortata crescător dupa valorile campului c1)
use baza1s (este deschisă baza sortată)
list (este listat conţinutul tabelului sortat)

Exemplul 2.

Se doreşte ca această bază de date baza1 (cu structura descrisă mai sus) să fie sortată în
felul urmator:

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

-crescător după câmpul C2

-descrescător după câmpul C1

Se va crea baza de date cu numele baza2s, succesiunea de comenzi fiind următoarea:

use all (închide baza de date activă)

use baza1

sort to baza 2s on c2, c1/d

use baza1

use baza2s

browse

Ca rezultat se va afişa pe ecran:

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Al doilea criteriu de sortare este luat în considerare numai în cazul în care avem valori
egale în primul câmp precizat ca criteriu de sortare (în acest caz înregistrările care au în
câmpul C2 valoarea 23 sunt afişate în ordinea descrescătoare a valorilor din câmpul C1 ;

Daca toate valorile înregistrărilor din primul câmp sunt diferite, al doilea criteriu nu
intervine deloc.
Observaţie:
SORT TO BAZA2S ON C1, C2/D
SORT TO BAZA2S ON C2/D, C1
Rezultatul execuţiei celor două comenzi diferă

Comanda Quit

Comanda QUIT se utilizează pentru a ieşi din FoxPro

5.3.4 Realizarea formularelor, interogări şi rapoarte

Un formular este o fereastră în care se găsesc mai multe elemente care permit accesarea si
modificarea (actualizarea) înregistrărilor dintr-o bază de date . Elementele dintr-un
formular pot fi:

• Etichete – (labels) Etichetele pot conţine text. Ĩn mod implicit textul din etichetele
prezente în formele create în FOX se va referi la numele câmpurilor din baza de
date activă.

• Ferestre de editare – (text box), acestea conţinând înregistrările din baza de date.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Butoane de comandă – (command button), fiecare dintre aceste butoane fiind legat
de o acţiune posibilă în contextul utilizării bazei de date.

• Elementele comune – oricărei ferestre din Microsoft Windows (butoane de


maximizare, minimizare, închidere)

Etichete TextBox Butoane de comandă

Crearea formularelor se poate realiza foarte rapid urmând o succesiune de paşi cu selectarea
pentru fiecare etapă a opţiunilor dorite.

Presupunând creatǎ o baza de date, succesiunea paşilor care anexează un formular este
urmatoarea:

Din meniul TOOLS se selectează opţiunea WIZARDS.

Din lista care apare se selectează FORM

În continuare se selectează în acest exemplu FORM WIZARD

Apare un ecran din care se selectează acel tabel de care va fi legat formularul.

Sunt selectate câmpurile din tabel care vor fi vizibile în FORM.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Următoarea etapă permite doua acţiuni:

• se alege stilul în care va fi realizat formularul

• se precizează setarea butoanelor de comanda

Se trece la următoarea etapă prin apăsarea opţiunii NEXT . În această noua fază sunt
precizate :

• câmpurile după care va fi sortată baza de date (unul sau mai multe câmpuri, cu
posibilitatea sortării crescătoare sau descrescătoare).

• câmpul după care se realizează indexarea bazei de date.

Următoarea etapă se referă la precizarea numelui formularului şi salvarea acestuia. Dacă nu


se precizează alt nume formularul va avea implicit numele tabelului de care a fost legat şi
extinsia SCX. Tot în această etapă se poate opta fie pentru lansarea imediată a formularului
, fie pentru salvarea sa în vederea unei folosiri ulterioare.

OBS. Pentru a lansa în executie un formular salvat se va folosi în fereastra de comenzi:

DO FORM nume.SCX

Pe formular avem următoarele butoane de comandă:

• Butonul marcat cu textul TOP. Acesta afişează în formular prima înregistrare din
baza de date.

• Obs. Prima înregistrare rezultată în urma eventualei sortări, nu prima înregistrare


din baza de date precizată la începutul creării formularului.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Butonul marcat cu textul BOTTOM. Butonul afişează în formular ultima


înregistrare

• Butonul marcat cu textul NEXT Acest buton afişează următoarea înregistrare din
baza de date. Butonul nu este activ daca suntem poziţionaţi pe ultima înregistrare.

• Butonul marcat cu textul PREV Acest buton afişează înregistrarea anterioară din
baza de date.

• Butonul marcat cu textul ADD – permite adăugarea unei noi înregistrări în baza de
date.

• Câmpurile trebuie să respecte structura articolului;

• Adăugarea ţine cont de opţiunea sortării bazei de date;

• Butonul marcat cu textul EDIT – Butonul permite modificarea valorilor


înregistrărilor din baza de date

• Butonul marcat cu textul DELETE - butonul realizează ştergerea înregistrărilor din


baza de date.

• Butonul marcat cu textul FIND - determină apariţia unui ecran în care se pot
construi expresii. Acest ecran are următoarea structură:

• FIELD OPERATOR VALUE

• FIELDS – poate fi orice câmp din baza de date activă;

• OPERATOR se referă la operatori, aceştia putând fi:

• Operatori relaţionali (=, >, <, <=)

• Operatorul Between – permite selectarea câmpurilor cuprinse între două valori. În


acest caz în dreptul câmpului VALUE sunt date două valori separate prin virgulă.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

• Operatorul Contains – este utilizat preponderent pentru găsirea înregistrărilor ( din


câmpuri de tipul şir de caractere ) care conţin o anumită literă sau un grup de litere.

• In dreptul câmpului VALUE sunt introduse valorile după care se realizează


căutarea.

• OBS. Ĩn cazul câmpurilor de tipul şir de caractere, spre deosebire de sintaxa de la


comenzile BROWSE, LIST, EDIT, valorile căutate nu se introduc între ghilimele
duble (”).

• EXIT Se iese din formular.

Realizarea unei BD Marketing

Se vor descrie următoarele etape necesare constuirii Bazei de Date în domeniul Marketing.
1. Realizarea unui formular dedicat colectării datelor.
2. Legarea formularului realizat de un fisier Foaie de calcul aflat în cloud (google în acest
caz)
3. Trimiterea formularului cu mai multe tipuri de intrebări prin intermediul mail-ului sau
prin intermediul unui link. Desigur dacă este cazul acest link poate fi încapsulat într-un
site.
4. Răspunsurile se colectează in fişierul Foaie de calcul Google şi se prelucrează ulterior
prin intermediul unui SGBD (Fox, Access etc) si desigur SQL.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se introduce parola si se selectează Inainte

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

După realizarea conectării la Cloud se va alege crearea unui document nou.

Dintre opţiunile afişate vom selecta Foi de calcul Google

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se deschide foaia de calcul si se accesează meniul Inserare.


Din meniul Inserare vom selecta optiunea Formular.

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se precizează titlul formularului si textul primei întrebări. Implicit aceasta este de tipul
Răspunsuri Multiple

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se pot construi întrebări de următoarele tipuri:

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se poate considera urmatorul exemplu:

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Se construiesc întrebările și se alege tipul potrivit de raspuns. Se alege Send.

Se poate trimite chestionarul prin intermediul unui link (sau mail)

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Răspunsurile se vor centraliza automat în foaia de calcul de care s-a atașat


formularul.

Răspunsurile se pot vizualiza individual sau sub forma grafică(sumar)

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Conf. dr. Radu Șerban


Sinteza Baze de date în marketing

Foaia de calcul se poate exporta și prelucra în Access, Fox, SQL etc.

Conf. dr. Radu Șerban

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