6. ALTER TABLE Flashcards

1
Q

Ce face instrucțiunea ALTER TABLE în SQL?

A

🔹 ALTER TABLE permite modificarea structurii unui tabel existent, cum ar fi adăugarea, modificarea sau ștergerea coloanelor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Care este sintaxa pentru a adăuga o nouă coloană folosind ALTER TABLE?

A
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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Ce se întâmplă cu rândurile existente după adăugarea unei coloane?

A

🔹 Valorile din coloana nouă vor fi inițial NULL, deoarece nu există date pentru rândurile vechi (dacă nu s-a definit un DEFAULT.)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Se poate adăuga o coloană cu o constrângere (NOT NULL, DEFAULT etc.)?

A

🔹 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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Se poate șterge o coloană folosind ALTER TABLE?

A

🔹 Î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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cum putem adăuga o coloană care nu permite valori NULL?

A

✅ Trebuie să specificăm NOT NULL și un DEFAULT:

ALTER TABLE celebs
ADD COLUMN twitter_handle TEXT NOT NULL DEFAULT '@unknown';
How well did you know this?
1
Not at all
2
3
4
5
Perfectly