logo

ALTER (RENAME) i SQL

I SQL kræves der ofte strukturelle ændringer af en database, såsom at omdøbe tabeller eller kolonner, tilføje nye kolonner eller ændre datatyper. ALTER TABLE-kommandoen gør det muligt at foretage disse ændringer effektivt uden at påvirke eksisterende data. Det er en vigtig kommando til styring og opdatering af databaseskemaer, efterhånden som applikationskravene udvikler sig.

Eksempel: Lad os først oprette et eksempel på elevtabel for at demonstrere ALTER-kommandoen:

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

Forespørgsel:



ALTER TABLE students   
RENAME TO learners;

Produktion:

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

Syntaks for ALTER-kommando

Her er de almindelige syntaksformater til brug af kommandoen ALTER TABLE:

1. Omdøbning af en tabel

ALTER TABLE tabelnavn
OMDØB TIL nyt_tabel_navn;

2. Omdøbning af en kolonne

ALTER TABLE tabelnavn
RENAME COLUMN old_column_name TIL new_column_name;

3. Tilføjelse af en ny kolonne

ALTER TABLE tabelnavn
ADD kolonnenavn datatype;

muserul virker ikke

ALTER TABLE tabelnavn
MODIFY COLUMN column_name new_datatype;

Eksempler på ALTER-kommando i SQL

Nedenfor er praktiske eksempler til at hjælpe os med at forstå, hvordan man bruger ALTER-kommandoen effektivt i forskellige scenarier. Disse eksempler omfatter omdøbning af tabeller eller kolonner, tilføjelse af nye kolonner eller skiftende kolonne datatyper.

1. Opret en prøvetabel

Lad os først oprette et eksempel på en elev tabel for at demonstrere ALTER kommando:

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

Lad os indsætte nogle data og derefter udføre ALTER-operationen for bedre at forstå 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');

Produktion

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

Eksempel 1: Omdøb en kolonne

Skift navnet på kolonnenavnet til FIRST_NAME i tabel Elev. For at ændre kolonnenavnet på den eksisterende tabel skal vi bruge kolonnenøgleordet, før vi skriver det eksisterende kolonnenavn for at ændre.

Syntaks

ÆNDRING TABEL Elev RENAME COLUMN Column_NAME TIL FIRST_NAME;

Forespørgsel:

ALTER TABLE Student RENAME Column name TO FIRST_NAME;

Produktion

ALTER (RENAME) i SQLProduktion

Eksempel 2: Omdøb en tabel

I dette eksempel ønsker vi at omdøbe tabellen fraStudenttilStudent_Detailsved hjælp afALTER TABLEkommando gør navnet mere beskrivende og relevant for dets indhold.

Forespørgsel:

ALTER TABLE Student RENAME TO Student_Details;

Produktion

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

Eksempel 3: Tilføj en ny kolonne

For at tilføje en ny kolonne til den eksisterende tabel skal vi først vælge tabellen med ALTER TABLE-kommandoen tabelnavn, og derefter vil vi skrive navnet på den nye kolonne og dens datatype med ADD kolonnenavn datatype. Lad os tage et kig nedenfor for at forstå det bedre.

Syntaks

ALTER TABLE tabelnavn
ADD kolonnenavn datatype;

dynamisk programmering

Forespørgsel:

ALTER TABLE Student ADD marks INT;

Produktion

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

I eksempletphonekolonne er opdateret fraVARCHAR(20)tilBIGINT at gemme numeriske data mere effektivt og sikre dataintegritet for telefonnumre uden unødvendige tegn.

Syntaks

ALTER TABLE tabelnavn
MODIFY COLUMN column_name new_datatype;

Forespørgsel:

ALTER TABLE Student_Details  
MODIFY COLUMN phone BIGINT;

Produktion

idnavnaldere-mailtelefon
1Hvad20[email protected]9999999999
2Rahul22[email protected]8888888888
3Priya21[email protected]7777777777
4Sonia23[email protected]6666666666
5Opkaldet19[email protected]5555555555

Forklaring :

javascript søvn
  • Telefonkolonnen har nu en BIGINT datatype, der er egnet til lagring af store numeriske værdier.
  • Eksisterende data forbliver uændret, men gemmes som heltal i stedet for strenge.

Yderligere anvendelsestilfælde for ALTER-kommando

1. Fjernelse af en kolonne : I nogle tilfælde skal vi muligvis fjerne en kolonne. For at gøre det kan du bruge DROP COLUMN syntaksen:

ÆNDRINGSTABEL Elev_Details

DROP KOLONNE-mærker;

Denne kommando sletter mærkekolonnen helt fra tabellen

2. Ændring af en kolonnes standardværdi : Vi kan også ændre en kolonnes standardværdi ved hjælp af SET DEFAULT-sætningen:

ÆNDRINGSTABEL Elev_Details

ÆNDRE KOLONNE alder SÆT STANDARD 18;

3. Omdøbning af en tabel eller kolonne i forskellige databaser : Bemærk, at SQL-syntaks kan variere på tværs af forskellige databasesystemer. Her er, hvordan vi ville omdøbe en tabel eller kolonne i MySQL MariaDB og Oracle :

  • MySQL / MariaDB : Syntaksen for at omdøbe en kolonne er den samme, men du skal også bruge kommandoen CHANGE COLUMN for at omdøbe en kolonne:

ÆNDRINGSTABEL Elev

CHANGE COLUMN old_column_name new_column_name datatype;

  • Oracle : Oracle understøtter RENAME COLUMN-syntaksen, men kræver en anden syntaks for at omdøbe en tabel:

ÆNDRINGSTABEL Elev OMDØB KOLUMNE old_column_name TO new_column_name;

Opret quiz