logo

ALTER (RINOMARE) in SQL

In SQL sono spesso necessarie modifiche strutturali a un database, come la ridenominazione di tabelle o colonne, l'aggiunta di nuove colonne o la modifica dei tipi di dati. Il comando ALTER TABLE consente di apportare queste modifiche in modo efficiente senza influire sui dati esistenti. Si tratta di un comando essenziale per la gestione e l'aggiornamento degli schemi di database man mano che i requisiti dell'applicazione evolvono.

Esempio: Per prima cosa creiamo una tabella Student di esempio per dimostrare il comando ALTER:

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

Domanda:



ALTER TABLE students   
RENAME TO learners;

Produzione:

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

Sintassi per il comando ALTER

Di seguito sono riportati i formati di sintassi comuni per l'utilizzo del comando ALTER TABLE:

1. Rinominare una tabella

ALTER TABLE nome_tabella
RINOMINARE IN nuovo_nome_tabella;

2. Rinominare una colonna

ALTER TABLE nome_tabella
RINOMINARE COLONNA vecchio_nome_colonna IN nuovo_nome_colonna;

3. Aggiunta di una nuova colonna

ALTER TABLE nome_tabella
AGGIUNGI tipo di dati nome_colonna;

anno mese

ALTER TABLE nome_tabella
MODIFICA COLONNA nome_colonna nuovo_tipodati;

Esempi di comando ALTER in SQL

Di seguito sono riportati esempi pratici per aiutarci a capire come utilizzare il comando ALTER in modo efficace in vari scenari. Questi esempi includono la ridenominazione di tabelle o colonne con l'aggiunta di nuove colonne o cambiando colonna tipi di dati.

1. Creare una tabella di esempio

Per prima cosa creiamo uno Student di esempio tabella per dimostrare l'ALTER comando:

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

Inseriamo alcuni dati e quindi eseguiamo l'operazione ALTER per comprendere meglio il comando alter.

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');

Produzione

Tavolo per studenti' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-2.webp' title=Tavolo per studenti

Esempio 1: Rinominare una colonna

Cambia il nome della colonna in FIRST_NAME nella tabella Student. Per modificare il nome della colonna della tabella esistente dobbiamo utilizzare la parola chiave Colonna prima di scrivere il nome della colonna esistente da modificare.

Sintassi

ALTER TABLE Student RENAME COLUMN Column_NAME TO FIRST_NAME;

Domanda:

ALTER TABLE Student RENAME Column name TO FIRST_NAME;

Produzione

ALTER (RINOMARE) in SQLProduzione

Esempio 2: Rinominare una tabella

In questo esempio vogliamo rinominare la tabella daStudentAStudent_Detailsutilizzando ilALTER TABLEcomando rendendo il nome più descrittivo e pertinente al suo contenuto.

Domanda:

ALTER TABLE Student RENAME TO Student_Details;

Produzione

Tabella Student_Dettagli' loading='lazy' src='//techcodeview.com/img/sql/03/alter-rename-in-sql-4.webp' title=Tabella Student_Dettagli

Esempio 3: aggiungere una nuova colonna

Per aggiungere una nuova colonna alla tabella esistente dobbiamo prima selezionare la tabella con il comando ALTER TABLE nome_tabella e poi scriveremo il nome della nuova colonna e il suo tipo di dati con ADD nome_colonna tipo di dati. Diamo un'occhiata qui sotto per capire meglio.

Sintassi

ALTER TABLE nome_tabella
AGGIUNGI tipo di dati nome_colonna;

pitone di inserimento

Domanda:

ALTER TABLE Student ADD marks INT;

Produzione

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

Nell'esempio ilphonela colonna viene aggiornata daVARCHAR(20)ABIGINT per memorizzare i dati numerici in modo più efficiente e garantire integrità dei dati per i numeri di telefono senza caratteri non necessari.

Sintassi

ALTER TABLE nome_tabella
MODIFICA COLONNA nome_colonna nuovo_tipodati;

Domanda:

ALTER TABLE Student_Details  
MODIFY COLUMN phone BIGINT;

Produzione

idnomeetàe-mailtelefono
1Che cosa20[email protected]9999999999
2Rahul22[email protected]8888888888
3Prija21[email protected]7777777777
4Sonia23[email protected]6666666666
5La chiamata19[email protected]5555555555

Spiegazione :

  • La colonna telefono ora ha un tipo di dati BIGINT adatto alla memorizzazione di valori numerici di grandi dimensioni.
  • I dati esistenti rimangono invariati ma vengono archiviati come numeri interi al posto delle stringhe.

Ulteriori casi d'uso del comando ALTER

1. Rimozione di una colonna : In alcuni casi potrebbe essere necessario rimuovere una colonna. Per fare ciò puoi usare la sintassi DROP COLUMN:

ALTER TABLE Student_Dettagli

Segni DROP COLUMN;

Questo comando elimina completamente la colonna dei segni dalla tabella

2. Modifica del valore predefinito di una colonna : Possiamo anche modificare il valore predefinito di una colonna utilizzando la clausola SET DEFAULT:

ALTER TABLE Student_Dettagli

ALTER COLUMN età SET DEFAULT 18;

3. Rinominare una tabella o una colonna in diversi database : Tieni presente che la sintassi SQL può variare tra diversi sistemi di database. Ecco come rinomineremo una tabella o una colonna in MySQL MariaDB e Oracolo :

per ogni Java
  • MySQL/MariaDB : La sintassi per rinominare una colonna è simile ma è necessario utilizzare anche il comando CHANGE COLUMN per rinominare una colonna:

ALTERARE TAVOLO Studente

CAMBIA COLONNA vecchio_nome_colonna nuovo_nome_colonna tipo dati;

  • Oracolo : Oracle supporta la sintassi RENAME COLUMN ma richiede una sintassi diversa per rinominare una tabella:

ALTER TABLE Student RENAME COLUMN vecchio_nome_colonna IN nuovo_nome_colonna;

Crea quiz