MySQL ve víru změn: Alter, Drop, Rename, Truncate



Jestliže varianty příkazu Create umožňují vytvářet různé objekty databáze, příkazy Alter, Drop, Rename a Truncate dovolují provádět jejich změny – ať už jde o změny definic struktury, změny jmen nebo mazání objektů či jejich obsahu. Pojďme se na ně podívat podrobněji.

Alter Table

Je na místě používat obzvláště příkazy Drop a Truncate velmi opatrně.
Je na místě používat obzvláště příkazy Drop a Truncate velmi opatrně.
Za příklad příkazu Alter si bereme variantu Alter Table pro změnu definice tabulek databáze. Obecná základní syntaxe vypadá takto: ALTER [ONLINE | OFFLINE] [IGNORE] TABLE jmeno_tabulky [specifikace_zmeny [,specifikace_zmeny] ...]. Specifikací změny přitom může být třeba ADD [COLUMN] pro přidání sloupce nebo DROP PRIMARY KEY pro zahození primárního indexu. Změnit ovšem lze třeba i databázový engine...

V praxi pak mohou příklady použití příkazu Alter Table vypadat třeba takto: ALTER TABLE tabulka ENGINE = InnoDB změní engine tabulky tabulka na InnoDB. Příkaz ALTER TABLE tabulka DROP COLUMN a, DROP COLUMN b zahodí z tabulky tabulka sloupce a a b. Nebo třeba můžete změnit typ hodnot sloupce/atributu tabulky: ALTER TABLE tabulka MODIFY col1 BIGINT.

Příkaz Alter lze použít i na řadu dalších objektů databáze, a to například ve formátech Alter Database, Alter Function, Alter View a podobně.

Drop Database

Příkaz Drop umožňuje mazat celé objekty databáze, ba i celou databázi. Pokud tedy použijete příkaz DROP {DATABASE | SCHEMA} [IF EXISTS] jmeno_databaze, dojde k vymazání všech tabulek, jejich obsahu i samotné databáze jmeno_databaze.

Podobně lze použít i příkazy Drop Table, Drop View, Drop Function a další pro mazání dalších již nepotřebných objektů databáze.

Rename Database, Rename Table

Přejmenování tabulky snadno realizujete příkazem RENAME TABLE jmeno_tabulky TO nove_jmeno_tabulky. Podobně databázi lze přejmenovat příkazem RENAME {DATABASE | SCHEMA} jmeno_databaze TO nove_jmeno_databaze.

Truncate table

A konečně tu máme příkaz Truncate Table, který slouží ke kompletnímu vymazání obsahu tabulky, ovšem při zachování její struktury, samozřejmě. Syntaxe příkazu vypadá takto: TRUNCATE [TABLE] jmeno_tabulky. Za zmínku v této souvislosti – a koneckonců i v souvislosti se všemi výše uvedenými příkazy – fakt, že neexistuje obecný způsob, jak bez zálohy v MySQL vrátit zpět smazané struktury a data. Proto je na místě používat obzvláště příkazy Drop a Truncate velmi opatrně, po zvážení všech možných důsledků – obzvláště v komplexnějším kódu. Aby nemohlo nešťastným omylem dojít k vymazání důležitých dat.

Tímto pokračováním tedy máme za sebou příkazy pro definici, úpravy a mazání struktur dat a od příště se budeme věnovat manipulaci s daty.


(9. 9. 2013 | redakce2)


Předcházející článek: <<< MySQL: Další příklady použití příkazu Create <<<
Následující článek: >>> MySQL: Manipulujeme s daty příkazem Select >>>

Tento článek je součástí speciálu:

Jazyk SQL v kostce: Od Select po Commit


Příkazy jazyka SQL lze rozdělit do několika skupin, podle toho, co je jejich účelem.

Jazyk SQL (z anglického Structured Query Language) asi není třeba dlouze představovat: Řada uživatelů počítačů jej zná z desktopových databází a snad všichni, kdo se někdy zabývali tvorbou webu, jej pak používají pro propojení skriptovacího jazyka stránek – nejčastěji PHP – s backendovou databází – nejčastěji MySQL. Pojďme se tedy společně podívat jak na základy, tak na některá zákoutí SQL.


Facebook Twitter
Komentáře, názory a rady

Zatím sem nikdo nevložil žádný komentář. Buďte první...

>>> Číst a vkládat komentáře <<<

Tip - Konference: DATOVÁ CENTRA PRO BUSINESS 2019 - 19.9.2019!
Hledáme nové kolegy pro realizaci zajímavých projektů
v oblasti IT

NOVINKA: Pozoruhodné IT produkty 2019 podruhé
Ani tentokrát si nenechte ujít produkty, které vám mohou pomoci ve vaší práci v IT.

Pozoruhodné IT produkty pro rok 2019
Náš první letošní seznam zajímavých produktů, které byste určitě neměli minout






Články čtenářů

Jak ve Windows 10 zakázat nebo povol...


Čas od času se každému z nás hodí nastavit, které aplikace se mají ve Windows 10 spouštět po spuštění Windows a které se naopak spouštět nemají. Jak tedy přidat apli...

Jakou kancelářskou židli vybrat k po...


Každý z nás řeší výběr správného PC, které nám bude pokud možno co nejdelší dobu spolehlivě sloužit a přitom bude mít dostatečný výpočetní výkon, ale méně lidí řeší ...

Komentáře čtenářů

TBW
Dobrý den. Koukám že váš článek je z roku 2016. Dnes je rok 2019 a situace může být odlišná. Můj dotaz z...>>
Podnikání na youtube
Zdravím, měl bych pár dotazů týkajících se podnikání na youtube. Četl jsem na http://techhity.cz/media/j...>>
Zdá se mi to nebezpečné
Přijde mi to už docela nebezpečné, že půjde platit i prostřednictvím televize. Ale pokrok nezastavíme. C...>>


©2011-2019 BusinessIT.cz, ISSN 1805-0522 | Názvy použité v textech mohou být ochrannými známkami příslušných vlastníků.
Provozovatel: Bispiral, s.r.o., kontakt: BusinessIT(at)Bispiral.com | Inzerce: Best Online Media, s.r.o., zuzana@online-media.cz
Používáme účetní program Money S3
O vydavateli | Pravidla webu BusinessIT.cz a ochrana soukromí | pg(1523)