ALTER (RENAME) v SQL

ALTER (RENAME) v SQL

V SQL jsou často vyžadovány strukturální úpravy databáze, jako je přejmenování tabulek nebo sloupců, přidání nových sloupců nebo změna datových typů. Příkaz ALTER TABLE umožňuje provádět tyto změny efektivně bez ovlivnění existujících dat. Je to nezbytný příkaz pro správu a aktualizaci databázových schémat podle toho, jak se vyvíjejí požadavky na aplikace.

Příklad: Nejprve vytvořte vzorovou studentskou tabulku pro demonstraci příkazu ALTER:

studentský stůl

Dotaz:

 ALTER TABLE students    
RENAME TO learners;

výstup:

Alter-table

Syntaxe příkazu ALTER

Zde jsou běžné formáty syntaxe pro použití příkazu ALTER TABLE:

1. Přejmenování tabulky

ALTER TABLE název_tabulky
RENAME TO new_table_name;

2. Přejmenování sloupce

ALTER TABLE název_tabulky
PŘEJMENOVAT SLOUPEC starý_název_sloupce NA nový_název_sloupce;

3. Přidání nového sloupce

ALTER TABLE název_tabulky
ADD název_sloupce datový typ;

ALTER TABLE název_tabulky
MODIFY COLUMN název_sloupce nový_datový typ;

Příklady příkazu ALTER v SQL

Níže jsou uvedeny praktické příklady, které nám pomohou pochopit, jak efektivně používat příkaz ALTER v různých scénářích. Tyto příklady zahrnují přejmenování tabulek nebo sloupců přidáním nových sloupců nebo měnící se sloupec datové typy.

1. Vytvořte vzorovou tabulku

Nejprve si vytvořte ukázkový Student tabulka pro demonstraci ALTER příkaz:

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

Pojďme vložit nějaká data a poté provést operaci ALTER, abychom lépe porozuměli příkazu 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');

Výstup

Studentský stůlStudentský stůl

Příklad 1: Přejmenujte sloupec

Změňte název sloupce na FIRST_NAME v tabulce Student. Chcete-li změnit název sloupce existující tabulky, musíme použít klíčové slovo Column, než napíšete název stávajícího sloupce, který chcete změnit.

Syntax

ALTER TABLE Student RENAME COLUMN Column_NAME TO FIRST_NAME;

Dotaz:

 ALTER TABLE Student RENAME Column name TO FIRST_NAME;  

Výstup

ALTER (RENAME) v SQLVýstup

Příklad 2: Přejmenujte tabulku

V tomto příkladu chceme tabulku přejmenovat z Student na Student_Details pomocí ALTER TABLE příkaz, díky kterému je název popisnější a relevantní k jeho obsahu.

Dotaz:

 ALTER TABLE Student RENAME TO Student_Details;  

Výstup

Tabulka podrobností studentaTabulka podrobností studenta

Příklad 3: Přidejte nový sloupec

Pro přidání nového sloupce do stávající tabulky musíme nejprve vybrat tabulku příkazem ALTER TABLE název_tabulky a poté napíšeme název nového sloupce a jeho datový typ pomocí ADD název_sloupce datový typ. Podívejme se níže, abychom lépe porozuměli.

Syntax

ALTER TABLE název_tabulky
ADD název_sloupce datový typ;

Dotaz:

 ALTER TABLE Student ADD marks INT;  

Výstup

výstupvýstup

V příkladu phone sloupec je aktualizován z VARCHAR(20) na BIGINT efektivněji ukládat číselná data a zajistit integrita dat pro telefonní čísla bez zbytečných znaků.

Syntax

ALTER TABLE název_tabulky
MODIFY COLUMN název_sloupce nový_datový typ;

Dotaz:

 ALTER TABLE Student_Details   
MODIFY COLUMN phone BIGINT;

Výstup

id jméno stáří e-mail telefon
1 Co 20 [email protected] 9999999999
2 Rahul 22 [email protected] 8888888888
3 Priya 21 [email protected] 7777777777
4 Sonia 23 [email protected] 6666666666
5 Hovor 19 [email protected] 5555555555

Vysvětlení :

  • Sloupec telefon má nyní datový typ BIGINT vhodný pro ukládání velkých číselných hodnot.
  • Stávající data zůstávají nezměněna, ale jsou uložena jako celá čísla místo strun.

Další případy použití příkazu ALTER

1. Odebrání sloupce : V některých případech může být nutné sloupec odstranit. K tomu můžete použít syntaxi DROP COLUMN:

ALTER TABLE Student_Details

značky DROP COLUMN;

Tento příkaz zcela odstraní sloupec značek z tabulky

2. Změna výchozí hodnoty sloupce : Můžeme také upravit výchozí hodnotu sloupce pomocí klauzule SET DEFAULT:

ALTER TABLE Student_Details

ALTER COLUMN age SET DEFAULT 18;

3. Přejmenování tabulky nebo sloupce v různých databázích : Všimněte si, že syntaxe SQL se může v různých databázových systémech lišit. Zde je návod, jak bychom přejmenovali tabulku nebo sloupec v MySQL MariaDB a Věštec :

  • MySQL / MariaDB : Syntaxe pro přejmenování sloupce je podobná, ale k přejmenování sloupce musíte také použít příkaz CHANGE COLUMN:

ALTER TABLE Student

CHANGE COLUMN starý_název_sloupce nový_název_sloupce datový typ;

  • Věštec : Oracle podporuje syntaxi RENAME COLUMN, ale vyžaduje jinou syntaxi pro přejmenování tabulky:

ALTER TABLE Student PŘEJMENOVAT COLUMN starý_název_sloupce TO nový_název_sloupce;

Vytvořit kvíz