Ce face instrucțiunea ALTER TABLE în SQL?
🔹 ALTER TABLE permite modificarea structurii unui tabel existent, cum ar fi adăugarea, modificarea sau ștergerea coloanelor.
Care este sintaxa pentru a adăuga o nouă coloană folosind ALTER TABLE?
ALTER TABLE table_name ADD COLUMN column_name data_type;
Exemplu: Adăugarea unei coloane twitter_handle în tabelul celebs
ALTER TABLE celebs ADD COLUMN twitter_handle TEXT;
✅ ALTER TABLE celebs → Se modifică tabelul celebs.
✅ ADD COLUMN twitter_handle TEXT → Se adaugă coloana twitter_handle de tip TEXT.
Ce se întâmplă cu rândurile existente după adăugarea unei coloane?
🔹 Valorile din coloana nouă vor fi inițial NULL, deoarece nu există date pentru rândurile vechi (dacă nu s-a definit un DEFAULT.)
Se poate adăuga o coloană cu o constrângere (NOT NULL, DEFAULT etc.)?
🔹 Da! De exemplu, pentru a adăuga twitter_handle cu o valoare implicită:
ALTER TABLE celebs ADD COLUMN twitter_handle TEXT DEFAULT '@unknown';
🔹 Acum, toate rândurile existente vor avea @unknown în loc de NULL.
Se poate șterge o coloană folosind ALTER TABLE?
🔹 În unele RDBMS (ex: MySQL, PostgreSQL), se poate folosi:
ALTER TABLE celebs DROP COLUMN twitter_handle;
⚠️ Atenție! Nu toate sistemele SQL permit ștergerea coloanelor. SQLite, de exemplu, nu suportă DROP COLUMN.
Cum putem adăuga o coloană care nu permite valori NULL?
✅ Trebuie să specificăm NOT NULL și un DEFAULT:
ALTER TABLE celebs ADD COLUMN twitter_handle TEXT NOT NULL DEFAULT '@unknown';