Download presentation
Presentation is loading. Please wait.
1
Modificarea structurii unei tabele
2
Obiective În această lecție veți învăța:
Să adăugați, ștergeți și modificați coloanele unei tabele Să redenumiți o coloană, o tabelă Să adăugați, vizualizați, ștergeți comentarii la nivel de coloană respectiv la nivel de tabelă Să adăugați, ștergeți, activați/dezactivați constrângeri
3
Dobândirea cunoștințelor
Modificarea structurii unei tabele se realizează cu ajutorul comenzii ALTER TABLE, permițând: adăugarea sau ștergerea unei coloane, modificarea definiției unei coloane, crearea unei noi constrângeri, ștergerea unor constrângeri existente.
4
Dobândirea cunoștințelor
În tabelul de mai jos sunt prezentate operațiile care se pot efectua asupra unei tabele împreună cu sintaxa fiecăreia: Operația Sintaxa Adăugarea unei coloane ALTER TABLE nume_tabela ADD(nume_coloana tip) Ștergerea unei coloane DROP COLUMN nume_coloana Modificarea unei coloane MODIFY(nume_coloana tip [DEFAULT valoare|expresie]) Redenumirea unei coloane RENAME COLUMN nume_col_vechi TO nume_col_nou Redenumirea unei tabele RENAME nume_tabela_vechi TO nume_tabela_nou Ștergerea unei tabele DROP TABLE nume_tabela
5
Dobândirea cunoștințelor
Operația Sintaxa Marcarea unor coloane pentru ștergere ALTER TABLE nume_tabela SET UNUSED (nume_coloana) Ștergerea coloanelor marcate pentru ştergere DROP UNUSED COLUMN Adăugarea comentariilor la nivel de tabelă respectiv la nivel de coloană COMMENT ON TABLE nume_tabela IS ‘explicatii’ COMMENT ON COLUMN nume_tabela.nume_coloana IS ‘explicatii’ Vizualizarea comentariilor SELECT table_name, comments FROM user_tab_comments| all_tab_comments FROM user_col_comments | all_tab_comments Ştergerea comentariilor COMMENT ON TABLE nume_tabela IS ‘ ‘ COMMENT ON COLUMN nume_tabela.nume_coloana IS ‘ ‘
6
Dobândirea cunoștințelor
Operația Sintaxa Adăugarea unei constrângeri ALTER TABLE nume_tabela ADD CONSTRAINT nume_constrangere TYPE OF CONSTRAINT (nume_coloana sau conditie) sau ADD TYPE OF CONSTRAINT (nume_coloana sau conditie) NOT NULL MODIFY (nume_coloana CONSTRAINT nume_constrangere NOT NULL) Ştergerea unei constrângeri DROP CONSTRAINT nume_constrangere [CASCADE] DROP CONSTRAINT TYPE OF CONSTRAINT (nume_coloana) [CASCADE]
7
Dobândirea cunoștințelor
Operația Sintaxa Dezactivarea unei constrângeri ALTER TABLE nume_tabela DISABLE CONSTRAINT nume_constrangere [CASCADE] sau CREATE TABLE nume_tabela(Nume_coloana tip TYPE OF CONSTRAINT DISABLE) Activarea unei constrângeri ENABLE CONSTRAINT nume_constrangere Ștergerea unei coloane care este implicată în constrângeri DROP COLUMN(nume_coloana) CASCADE CONSTRAINT Vizualizarea constrângerilor SELECT constraint_name, constraint_type FROM user_constraints WHERE TABLE _NAME =’nume_tabela’
8
Dobândirea cunoștințelor
Observații: 1. Orice coloană nou creată va deveni ultima coloană a tabelei. Dacă tabela conține deja date, coloana adăugată va fi completată cu NULL în toate liniile existente. De aceea nu putem adăuga o coloană cu restricția NOT NULL la o tabelă care conține deja date 2. Ștergerea unei coloane implică automat și ștergerea restricțiilor definite pentru aceasta, dar care nu implică și alte coloane. Însă, dacă dorim să ștergem o anumită coloană și avem definită o restricție la nivel de tabelă care implică acea coloană se va genera o eroare. O variantă ar fii ștergerea tuturor restricțiilor în care apare acea coloană care trebuie ștearsă sau folosirea clauzei CASCADE CONSTRAINTS.
9
Dobândirea cunoștințelor
3. Mărirea numărului de caractere pentru o coloană de tip șir de caractere se poate face fără nicio problemă, însă micșorarea acestei dimensiuni se poate face doar dacă tabela este goală sau coloana respectivă conține doar valori NULL. 4. Cu opțiunea MODIFY se poate modifica sau se poate stabili o valoare implicită, dacă nu există deja una, însă această valoare implicită nu va afecta liniile deja existente în tabelă, ci doar liniile ce vor fi introduse în continuare. 5. Constrângerea NOT NULL este singura constrângere care este adăugată doar prin modificare coloanei folosind MODIFY și nu prin ADD [CONSTRAINT].
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.