ALTER (RENAME) i SQL

ALTER (RENAME) i SQL

I SQL er det ofte nødvendig med strukturelle endringer i en database, for eksempel å gi nytt navn til tabeller eller kolonner ved å legge til nye kolonner eller endre datatyper. ALTER TABLE-kommandoen lar disse endringene gjøres effektivt uten å påvirke eksisterende data. Det er en viktig kommando for å administrere og oppdatere databaseskjemaer etter hvert som applikasjonskravene utvikler seg.

Eksempel: La oss først lage et eksempel på en studenttabell for å demonstrere ALTER-kommandoen:

student-bord

Spørsmål:

 ALTER TABLE students    
RENAME TO learners;

Produksjon:

Alter-tabell

Syntaks for ALTER-kommando

Her er de vanlige syntaksformatene for bruk av ALTER TABLE-kommandoen:

1. Gi nytt navn til en tabell

ALTER TABLE tabellnavn
RENAME TIL new_table_name;

2. Gi nytt navn til en kolonne

ALTER TABLE tabellnavn
RENAME COLUMN old_column_name TIL new_column_name;

3. Legge til en ny kolonne

ALTER TABLE tabellnavn
ADD kolonnenavn datatype;

ALTER TABLE tabellnavn
MODIFY COLUMN column_name new_datatype;

Eksempler på ALTER-kommando i SQL

Nedenfor er praktiske eksempler for å hjelpe oss å forstå hvordan du bruker ALTER-kommandoen effektivt i ulike scenarier. Disse eksemplene inkluderer å gi nytt navn til tabeller eller kolonner som legger til nye kolonner eller skifter kolonne datatyper.

1. Lag en prøvetabell

La oss først lage en prøvestudent tabell for å demonstrere ALTER kommando:

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

La oss sette inn noen data og deretter utføre ALTER-operasjonen for å forstå bedre alter-kommandoen.

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

Produksjon

StudentbordStudentbord

Eksempel 1: Gi nytt navn til en kolonne

Endre navnet på kolonnenavnet til FIRST_NAME i tabellen Student. For å endre kolonnenavnet til den eksisterende tabellen må vi bruke kolonnenøkkelordet før vi skriver det eksisterende kolonnenavnet som skal endres.

Syntaks

ENDRE TABELL Student RENAME COLUMN Column_NAME TIL FIRST_NAME;

Spørsmål:

 ALTER TABLE Student RENAME Column name TO FIRST_NAME;  

Produksjon

ALTER (RENAME) i SQLProduksjon

Eksempel 2: Gi nytt navn til en tabell

I dette eksemplet ønsker vi å gi nytt navn til tabellen fra Student til Student_Details ved å bruke ALTER TABLE kommando som gjør navnet mer beskrivende og relevant for innholdet.

Spørsmål:

 ALTER TABLE Student RENAME TO Student_Details;  

Produksjon

Student_Details-tabellStudent_Details-tabell

Eksempel 3: Legg til en ny kolonne

For å legge til en ny kolonne til den eksisterende tabellen, må vi først velge tabellen med ALTER TABLE-kommandoen table_name og deretter skriver vi navnet på den nye kolonnen og dens datatype med ADD column_name datatype. La oss ta en titt nedenfor for å forstå bedre.

Syntaks

ALTER TABLE tabellnavn
ADD kolonnenavn datatype;

Spørsmål:

 ALTER TABLE Student ADD marks INT;  

Produksjon

produksjonproduksjon

I eksemplet phone kolonnen er oppdatert fra VARCHAR(20) til BIGINT å lagre numeriske data mer effektivt og sikre dataintegritet for telefonnumre uten unødvendige tegn.

Syntaks

ALTER TABLE tabellnavn
MODIFY COLUMN column_name new_datatype;

Spørsmål:

 ALTER TABLE Student_Details   
MODIFY COLUMN phone BIGINT;

Produksjon

id navn alder e-post telefon
1 Hva 20 [email protected] 9999999999
2 Rahul 22 [email protected] 8888888888
3 Priya 21 [email protected] 7777777777
4 Sonia 23 [email protected] 6666666666
5 Samtalen 19 [email protected] 5555555555

Forklaring :

  • Telefonkolonnen har nå en BIGINT datatype som er egnet for lagring av store numeriske verdier.
  • Eksisterende data forblir uendret, men lagres som heltall i stedet for strenger.

Ytterligere brukstilfeller for ALTER-kommandoer

1. Fjerne en kolonne : I noen tilfeller må vi kanskje fjerne en kolonne. For å gjøre det kan du bruke DROP COLUMN-syntaksen:

ALTER TABLE Student_Details

DROPPE KOLONNE-merker;

Denne kommandoen sletter merkekolonnen helt fra tabellen

2. Endre en kolonnes standardverdi : Vi kan også endre en kolonnes standardverdi ved å bruke SET DEFAULT-leddet:

ALTER TABLE Student_Details

ALTER COLUMN age SET STANDARD 18;

3. Gi nytt navn til en tabell eller kolonne i forskjellige databaser : Merk at SQL-syntaks kan variere mellom ulike databasesystemer. Slik vil vi gi nytt navn til en tabell eller kolonne i MySQL MariaDB og Oracle :

  • MySQL / MariaDB : Syntaksen for å gi nytt navn til en kolonne er lik, men du må også bruke CHANGE COLUMN-kommandoen for å gi nytt navn til en kolonne:

ALTER TABLE Student

CHANGE COLUMN old_column_name new_column_name datatype;

  • Oracle : Oracle støtter RENAME COLUMN-syntaksen, men krever en annen syntaks for å gi nytt navn til en tabell:

ENDRE TABELL Student RENAME COLUMN old_column_name TO new_column_name;

Lag quiz