Sunteți pe pagina 1din 6

Modificarea structurii tabelei (ALTER TABLE)

1. Stabilirea unei reguli de validare pentru un câmp al tabelei


ALTER TABLE nume_tabelă COLUMN nume_câmp SET CHECK condiţie

Modificarea câmpului media prin adăugarea unei reguli de validare


(media să fie cuprinsă între 1 şi 10)

ALTER TABLE elevi ALTER COLUMN media SET CHECK media>=1 AND
media<=10 ERROR “media introdusa nu este corecta!” (doar pentru tabele legate –
care fac parte dintr-o bază de date)

2. Ştergerea unei restricţii stabilite anterior pentru un câmp


ALTER TABLE nume_tabelă COLUMN nume_câmp DROP CHECK

Ştergerea restricţiei stabilite anterior

ALTER TABLE elevi ALTER COLUMN media DROP CHECK

3. Adăugarea unui câmp nou în tabelă


ALTER TABLE nume_tabelă ADD COLUMN nume_câmp Tip (dimensiune)
NULL| NOT NULL

Adăugarea câmpului nrm (număr matricol) – câmp care va identifica în


mod unic înregistrările din tabela elevi (de aceea am precizat că
valoarea din câmp nu poate fi NULL)

ALTER TABLE elevi ADD COLUMN nrm N(4) NOT NULL

4. Eliminarea unui câmp din tabelă


ALTER TABLE nume_tabelă DROP COLUMN nume_câmp

Eliminarea câmpului adresa din tabelă

ALTER TABLE elevi DROP COLUMN adresa

5. Redenumirea unui câmp din tabelă


ALTER TABLE nume_tabelă RENAME numevechi_câmp TO numenou_câmp

Redenumirea câmpului nrm

ALTER TABLE elevi RENAME COLUMN nrm TO nrmat

1
Inserarea unei înregistrări în tabelă (INSERT INTO)

1. Inserarea la sfârşitul tabelei a unei înregistrări cu valorile pentru câmpuri date


în listă

INSERT INTO nume_tabelă (listă câmpuri) VALUES (listă valori)


Valorile din listă trebuie sa corespundă ca tip şi dimensiune cu câmpul de pe
aceeaşi poziţie din lista de câmpuri.

INSERT INTO elevi (nrmat, nume, prenume, clasa, media) VALUES (13,
“Ghita”, “Alexandru”, “12a”, 9.90)

2. Inserarea la sfârşitul tabelei a unei înregistrări cu valorile pentru câmpuri


preluate dintr-un tablou
INSERT INTO nume_tabelă FROM ARRAY nume_tablou

DIMENSION datele[5]
datele[1]=”Popescu”
datele[2]=”Liviu”
datele[3]=”9b”
datele[4]=9.90
datele[5]=15
INSERT INTO elevi FROM ARRAY datele

2
3. Inserarea unor înregistrări preluate dintr-o altă tabelă
INSERT INTO nume_tabelă (listă de câmpuri) SELECT listă de câmpuri FROM
nume_tabelă1 [WHERE condiţie]
(câmpurile din cele două liste trebuie să coincidă ca tip şi dimensiune (sau să fie
compatibile))

Inserare înregistrări selectate din tabela elevi1 în tabela elevi

INSERT INTO elevi.dbf (nrmat, nume, prenume, clasa, media) SELECT nrm,
nume, prenume, cls, media FROM elevi1.dbf

3
sau inserare înregistrări care respectă o anumită condiţie

INSERT INTO elevi.dbf (nrmat, nume, prenume, clasa, media) SELECT nrm,
nume, prenume, cls, media FROM elevi1.dbf WHERE alltrim(cls)=”4a”

Modificarea unei înregistrări din tabelă (UPDATE)


1. Setarea unui câmp la o anumită valoare pentru toate înregistrările unei tabele.

Setarea câmpului nr_abs la valoarea 0 pentru toate înregistrările din tabelă


ALTER TABLE elevi ADD COLUMN nrabs

UPDATE elevi SET nrabs=0

4
(în comandă poate să apară clauza WHERE condiţie pentru a specifica grupul de
înregistrări pentru care se face modificarea)

2. Modificarea înregistrărilor folosind valori selectate din altă tabelă

UPDATE elevi SET elevi.media=elevi1.media FROM elevi1 WHERE


ALLTRIM(UPPER(elevi.nume))=ALLTRIM(UPPER(elevi1.nume)) AND
ALLTRIM(UPPER(elevi.prenume))=ALLTRIM(UPPER(elevi1.prenume))

5
ŞTERGEREA unei înregistrări din tabelă (DELETE)

DELETE FROM nume_tabelă [WHERE condiţie]

1. Ştergerea din tabelă a unor înregistrări care respectă o anumită condiţie

DELETE FROM elevi WHERE ALLTRIM(clasa)="4a"


(marcare înregistrări pentru ştergere)

2. Ştergerea unei tabele de pe disc

DROP TABLE nume_tabelă

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