Stĺpec premenovania MySQL

Stĺpec premenovania MySQL

Niekedy je náš názov stĺpca nezmyselný, takže je potrebné premenovať alebo zmeniť názov stĺpca. MySQL poskytuje užitočnú syntax, ktorá dokáže premenovať jeden alebo viac stĺpcov v tabuľke. Pred premenovaním stĺpca je potrebných niekoľko privilégií, ako napríklad privilégiá príkazov ALTER a DROP.

MySQL môže premenovať názov stĺpca dvoma spôsobmi:

  1. Pomocou príkazu CHANGE
  2. Použitie príkazu RENAME

Použitie príkazu CHANGE:

Nasleduje syntax, ktorá ilustruje premenovanie stĺpca pomocou príkazu CHANGE:

 ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name Data Type;  

V tejto syntaxi vidíme, že môžeme vyžadovať opätovnú špecifikáciu všetkých atribútov stĺpcov. Táto syntax nám tiež umožňuje zmeniť typy údajov stĺpca. Niekedy však môže mať príkaz CHANGE nasledujúce nevýhody:

  • Všetky informácie o atribútoch stĺpcov nemusia byť dostupné pre aplikáciu na premenovanie.
  • Existuje riziko náhodnej zmeny typu údajov, ktorá môže viesť k strate údajov aplikácie.

Príklad

Poďme pochopiť, ako funguje príkaz CHANGE MySQL na premenovanie stĺpca pomocou rôznych príkladov. Predpokladajme, že máme tabuľku s názvom rovnováhu ktorý obsahuje tieto údaje:

Stĺpec premenovania MySQL

Z nejakého dôvodu musíme zmeniť názov stĺpca číslo_účtu spolu s jeho typom údajov . V takom prípade najprv skontrolujeme štruktúru tabuľky pomocou POPISOVAŤ vyhlásenie takto:

Stĺpec premenovania MySQL

Na tomto obrázku môžeme vidieť, že typ údajov stĺpca názov číslo_účtu je int . A chceme zmeniť názov tohto stĺpca ako číslo účtu a jeho dátový typ ako int do varchar . Môžeme teda vykonať nasledujúce vyhlásenie, aby sme to urobili:

 mysql> ALTER TABLE balance CHANGE COLUMN account_num account_no VARCHAR(25);  

Po vykonaní vyššie uvedeného príkazu ho môžeme overiť opätovným použitím príkazu DESCRIBE. Na obrázku nižšie sa názov stĺpca číslo_účtu a jeho typ údajov úspešne zmenili.

Stĺpec premenovania MySQL

Použitie príkazu RENAME:

Aby sme odstránili nevýhodu príkazu CHANGE, MySQL navrhlo nasledujúcu syntax, ktorá ilustruje zmenu názvu stĺpca pomocou príkazu RENAME:

 ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;  

Príklad

Poďme pochopiť, ako funguje príkaz RENAME v MySQL na zmenu názvu stĺpca pomocou rôznych príkladov. Predpokladajme, že máme tabuľku s názvom zákazníka ktorý obsahuje nasledujúce údaje:

Stĺpec premenovania MySQL

Predpokladajme, že chceme zmeniť účet s názvom stĺpca číslo účtu bez zmeny jeho dátových typov. Môžeme to urobiť vykonaním nižšie uvedeného príkazu:

 mysql> ALTER TABLE customer RENAME COLUMN account to account_no;  

Po vykonaní vyššie uvedeného príkazu to môžeme overiť pomocou VYBRAŤ opäť vyhlásenie. Na obrázku nižšie sa účet s názvom stĺpca úspešne zmenil.

Stĺpec premenovania MySQL

Premenovanie viacerých stĺpcov

MySQL nám tiež umožňuje zmeniť názvy viacerých stĺpcov v rámci jedného príkazu. Ak chceme premenovať viacero názvov stĺpcov, môžeme použiť nasledujúcu syntax:

 ALTER TABLE table_name CHANGE old_column_name1 new_column_name1 Data Type, CHANGE old_column_name2 new_column_name2 Data Type, ... ... CHANGE old_column_nameN new_column_nameN Data Type;  

ALEBO

 ALTER TABLE table_name RENAME COLUMN old_column_name1 TO new_column_name1, RENAME COLUMN old_column_name2 TO new_column_name2, ... ... RENAME COLUMN old_column_nameN TO new_column_nameN;  

Príklad

Predpokladajme, že sa chceme zmeniť názvy stĺpcov id a customer_name z zákaznícky stôl . Na zmenu viacerých názvov stĺpcov v rámci jedného príkazu môžeme použiť príkaz takto:

 mysql> ALTER TABLE customer CHANGE id cust_id int, CHANGE customer_name cust_name varchar(45);  

Po vykonaní vyššie uvedeného príkazu to môžeme overiť opätovným použitím príkazu SELECT. Na obrázku nižšie sa názov stĺpca id a customer_name úspešne zmenil:

Stĺpec premenovania MySQL

Zmeňte názov stĺpca, ktorý sa práve upravuje, pomocou príkazu RENAME COLUMN takto:

 mysql> ALTER TABLE customer RENAME COLUMN cust_id TO id, RENAME COLUMN cust_name TO customer_name;  

Po vykonaní vyššie uvedeného príkazu ho môžeme overiť opätovným použitím príkazu DESCRIBE. Na obrázku nižšie je názov stĺpca cust_id a cust_name sa úspešne zmenili:

Stĺpec premenovania MySQL

V tomto článku sme sa naučili predstavenie stĺpca MySQL RENAME a ako zmeniť názov stĺpca v zadanej tabuľke, spolu s príkladom dotazu pre lepšie pochopenie.