logo

ALTER (RENAME) en SQL

En SQL, sovint es requereixen modificacions estructurals a una base de dades, com canviar el nom de taules o columnes, afegir columnes noves o canviar els tipus de dades. L'ordre ALTER TABLE permet fer aquests canvis de manera eficient sense afectar les dades existents. És una ordre essencial per gestionar i actualitzar esquemes de bases de dades a mesura que evolucionen els requisits de l'aplicació.

Exemple: Primer creem una taula d'estudiant de mostra per demostrar l'ordre ALTER:

alumnes-taula' src='//techcodeview.com/img/sql/03/alter-rename-in-sql.webp' title=

Consulta:



ALTER TABLE students   
RENAME TO learners;

Sortida:

Alter-taula' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-1.webp' title=

Sintaxi de l'ordre ALTER

Aquests són els formats de sintaxi habituals per utilitzar l'ordre ALTER TABLE:

1. Canviar el nom d'una taula

ALTER TABLE nom_taula
CANVIA EL NOM A nom_taula_nou;

2. Canviar el nom d'una columna

ALTER TABLE nom_taula
RENAME COLUMN nom_columna_antiga A nom_columna_nou;

3. Afegir una nova columna

ALTER TABLE nom_taula
ADD column_name datatype;

matemàtiques java

ALTER TABLE nom_taula
MODIFY COLUMN nom_columna nou_tip de dades;

Exemples de l'ordre ALTER en SQL

A continuació es mostren exemples pràctics que ens ajudaran a entendre com utilitzar l'ordre ALTER de manera eficaç en diversos escenaris. Aquests exemples inclouen canviar el nom de taules o columnes afegint columnes noves o columna canviant tipus de dades.

1. Creeu una taula de mostra

Primer creem un alumne de mostra taula per demostrar l'ALTER comandament:

CREATE TABLE Student (  
id INT PRIMARY KEY
name VARCHAR(50)
age INT
email VARCHAR(50)
phone VARCHAR(20)
);

Introduïm algunes dades i després realitzem l'operació ALTER per entendre millor l'ordre d'alteració.

INSERT INTO Student (id name age email phone)   
VALUES
(1 'Amit' 20 '[email protected]' '9999999999')
(2 'Rahul' 22 '[email protected]' '8888888888')
(3 'Priya' 21 '[email protected]' '7777777777')
(4 'Sonia' 23 '[email protected]' '6666666666')
(5 'Kiran' 19 '[email protected]' '5555555555');

Sortida

Taula d'estudiants' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-2.webp' title=Taula d'estudiants

Exemple 1: Canvia el nom d'una columna

Canvieu el nom del nom de la columna a FIRST_NAME a la taula Student. Per canviar el nom de la columna de la taula existent hem d'utilitzar la paraula clau Columna abans d'escriure el nom de la columna existent per canviar.

Sintaxi

ALTER TABLE L'estudiant CANVIA EL NOM DE LA COLUMNA Column_NAME PER FIRST_NAME;

Consulta:

ALTER TABLE Student RENAME Column name TO FIRST_NAME;

Sortida

ALTER (RENAME) en SQLSortida

Exemple 2: Canvia el nom d'una taula

En aquest exemple volem canviar el nom de la taulaStudentaStudent_Detailsutilitzant elALTER TABLEcomanda que fa que el nom sigui més descriptiu i rellevant pel seu contingut.

Consulta:

ALTER TABLE Student RENAME TO Student_Details;

Sortida

Taula de detalls_estudiant' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-4.webp' title=Taula de detalls_estudiant

Exemple 3: afegiu una columna nova

Per afegir una nova columna a la taula existent, primer hem de seleccionar la taula amb l'ordre ALTER TABLE nom_taula i després escriurem el nom de la nova columna i el seu tipus de dades amb ADD nom_columna tipus de dades. Fem una ullada a continuació per entendre millor.

Sintaxi

ALTER TABLE nom_taula
ADD column_name datatype;

quants zeros hi ha 1.000 milions

Consulta:

ALTER TABLE Student ADD marks INT;

Sortida

sortida' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-5.webp' title=sortida

En l'exemple elphonela columna s'actualitza des deVARCHAR(20)aBIGINT per emmagatzemar dades numèriques de manera més eficient i garantir integritat de les dades dels números de telèfon sense caràcters innecessaris.

Sintaxi

ALTER TABLE nom_taula
MODIFY COLUMN nom_columna nou_tip de dades;

Consulta:

ALTER TABLE Student_Details  
MODIFY COLUMN phone BIGINT;

Sortida

idnomedatcorreu electrònictelèfon
1Què20[email protected]9999999999
2Rahul22[email protected]8888888888
3Priya21[email protected]7777777777
4Sonia23[email protected]6666666666
5La trucada19[email protected]5555555555

Explicació :

  • La columna del telèfon ara té un tipus de dades BIGINT adequat per emmagatzemar valors numèrics grans.
  • Les dades existents romanen sense canvis, però s'emmagatzemen com a nombres enters en lloc de cordes.

Casos d'ús addicionals de la comanda ALTER

1. Eliminació d'una columna : En alguns casos és possible que hàgim d'eliminar una columna. Per fer-ho, podeu utilitzar la sintaxi DROP COLUMN:

ALTER TABLE Estudiant_Detalls

DROP COLUMN marques;

Aquesta ordre suprimeix completament la columna de marques de la taula

2. Canviar el valor per defecte d'una columna : També podem modificar el valor per defecte d'una columna mitjançant la clàusula SET DEFAULT:

ALTER TABLE Estudiant_Detalls

ALTER COLUMN age SET DEFAULT 18;

3. Canviar el nom d'una taula o columna en diferents bases de dades : Tingueu en compte que la sintaxi SQL pot variar en diferents sistemes de bases de dades. Així és com canviaríem el nom d'una taula o columna a MySQL MariaDB i Oracle :

com actualitzo java
  • MySQL / MariaDB : La sintaxi per canviar el nom d'una columna és similar, però també heu d'utilitzar l'ordre CHANGE COLUMN per canviar el nom d'una columna:

ALTER TAULA Estudiant

CHANGE COLUMN nom_columna_antiga nom_columna_nou tipus de dades;

  • Oracle : Oracle admet la sintaxi RENAME COLUMN però requereix una sintaxi diferent per canviar el nom d'una taula:

ALTER TABLE Student RENAME COLUMN nom_columna_antiga A nom_columna_nou;

Crea un qüestionari