Grila cu 1 sau 2 răspunsuri.
De la ultima ședința avem o luna sa trimitem proiectul ca sa fim acceptași în examen.
Sa ne apucam de proiect când trecem la partea de insert date.
[Link]@[Link]
Baza de date:
- Site-uri
- Aplicații (folosesc baze de date pentru stocarea și extragerea informațiilor)
- Toate companiile au o baza de date (supermarket .. banci)
O baza de date
- Poate să fie utilizată/interogată de unul sau mai mulți utilizatori/aplicații/programe
Entitate- tabel (o pagină de excel compusă din linii și coloane)
Atribut- coloane (părți ale entităților)
Sistem de gestiune al bazelor de date
- Este format din mai multe programe utilizate pentru a realiza/administra și interoga o
bază de date
Baze de date de la Oracle: Sql Developer, MySql
Baze de date de la Microsoft: MS Access, Sql Server
Baza de date are nevoie de un server
- Definim o baza de date -avem nevoie de tabele – in tabele avem coloanele/atributele
- atributele au proprietăți
Un sistem de gestiune al bazelor de date conține printre alte componente și LDD și LMD
LDD – limbaj de descriere/definire a datelor – data description language
- Crearea/ștergerea unei baze de date
- Crearea/ștergere unei tabel
- Definire coloane
- Modificare carcateristici coloane
- Modificare denumire coloane
LMD – limbaj de manipulare a datelor – data manipulation language
- Insert – pentru introducerea înregistrărilor într-un tabela
- Select – pentru a interoga/afișa date din tabela
- Update – pentru a modifica înregistrările din tabelă
- Delete – pentru ștergerea înregistrărilor din tabelă
Diagrama unei bazei de date – ERD (entity relationship diagram)
- Se poate vedea conexiunea dintre tabele/ce tabele comunică între ele
Proprietăți de constrângere ale coloanelor
- PRIMARY KEY (PK) - valori unice și nenule
- cheie primară a unei tabele și reprezintă un atribut sau un ansamblu de atribute care
ne ajută să identificăm în mod unic o înregistrare într-o tabelă.
- Cheia primară formată dintr-un singur atribut este o cheie simplă
- Cheia primară formată din mai multe atribute se numește cheie compusă
Ex: tabela elev
- Setez un PK pe coloana CNP -> PK simplu
Tabela carte
- Setez un PK pe coloana Autor + Titlu + An_apariție – PK compus
Not NULL (NN)
- Unei coloane daca nu îi adăugăm proprietatea de NN by default permite NULL
Uniquie (U)
- Ne asigurăm că nu avem valori duplicate pe valoarea respectivă
Foreign Key (FK)
- Cheie externa
- Este legată de o coloană din alta tabela care trebuie obligatoriu sa fie PK in tabela
respectivă
- Valorile pe care doresc sa le inserez pe coloana, FK trebuie să se regasească printre
valorile de pe coloana PK de are este legat FK-ul
- Permite NULL
Tabela participanți Tabela câștigători
PK FK este legat de PK din tabela participanțiâ
Reguli generale de sintaxă în MySQL
- Numele poate să fie compus din mai multe cuvinte, dar acestea trebuie să fie unite
prin _ ( numar_pagini, an_aparitie)
- Nu putem sa avem două baze de date cu aceeași denumire pe același server
- Nu putem să avem două tabele denumite la fel în aceeași baza de date
- Într-o tabelă nu putem să avem 2 coloane cu același nume
Relații dintre tabele
- 1 to 1
- 1 to many
- Many to many ( nu este de dorit)
Diagrama ERD pentru o comisie examen
Comisie
Id_comise Primary Key
Denumire
Nr_persoane
Profesori
Id_profesori Primary Key
Nume
Prenume
Clasa
Id_clasa PK
Etaj
Nr_locuri
Comisie -Clasa 1 to many
Comisie – profesori 1 to many
Când avem o legături 1 to many foren key se pune
Many to many – avem nevoie de o tabelă de legătură
Tipuri de date
A) Numere întregi
INT – INTEGER
0 ......4294967295
INT UNSIGNED – nu permite valori negative
INT(5) ZEROFILL – însemnă ca adaugă zeouri în față până la 5 digiti
Ex cod_postal INT(5) ZEROFILL
12 – baza de date o sa ne puna 0 in față 00012
12345 – OK
CNP poate să fie de tip INT? – NU
201108389977
4294967295
B) Numere cu zecimale
X – nr total de cifre
Y – nr de zecimale
FLOATE(x,y)
Ex FLOAT(6,2) – 9999.99 nr total de cifre sun 6 , dintre care 2 sunt zecimale
FLOAT(x,y) – 0.. 24 zecimale
DOBLE(x,y) – 25 ... 53 zecimale
DECIMAL(x,y) – 30 zecimale
C) Caractere
CHAR – 0..250
VARCHAR – 0 ..65535
NVARCHAR – se folosește pentru caractere speciale
CHAR(10) - dacă inserăm caractere .. o să completeze cu spatii până la 10
caractere
VARCHAR(10) – dacă inserăm 5 caractere o să ocupe memorie cât pentru 5
caractere
CNP VARCHAR(13)
D) DATA
DATE – an-luna-zi 100-01-01 ..9999-12-31
DATATIME – an-luna-zi... ora-minut-secunda 100-01-01 ..9999-12-31 (plus ora)
TIMESTAMP – an-luna-zi ora-minut-secunda 1970-07-07..2038-01-19
E) BOOLEAN
TRUE sau FALSE
1 0 (daca este de tip INT)