MySQL TRUNCATE TABLE

Shrnutí: v tomto kurzu se naučíte používat příkaz MySQL TRUNCATE TABLE k odstranění všech dat v tabulce.

Úvod do příkazu MySQL TRUNCATE TABLE

Příkaz MySQL TRUNCATE TABLE umožňuje odstranit všechna data v tabulce.

Logicky se příkaz TRUNCATE TABLE podobá příkazu DELETE bez klauzule WHERE, který odstraní všechny řádky tabulky, nebo posloupnosti příkazů DROP TABLE a CREATE TABLE.

Příkaz TRUNCATE TABLE je však efektivnější než příkaz DELETE, protože tabulku zruší a znovu vytvoří, místo aby mazal řádky jeden po druhém.

Zde je základní syntaxe příkazuTRUNCATE TABLE:

Code language: SQL (Structured Query Language) (sql)

V této syntaxi zadáváte za klíčová slova TRUNCATE TABLE název tabulky, ze které chcete odstranit všechna data.

Klíčové slovo TABLE je nepovinné. Klíčové slovo TABLE je však vhodné použít, aby se rozlišilo mezi příkazem TRUNCATE TABLE a funkcí TRUNCATE().

Pokud existují nějaká omezení FOREIGN KEY z jiných tabulek, která odkazují na tabulku, kterou zkracujete, příkaz TRUNCATE TABLE selže.

Protože operace zkrácení způsobí implicitní revizi, nelze ji proto vrátit zpět.

Příkaz TRUNCATE TABLE obnoví hodnotu ve sloupci AUTO_INCREMENT na počáteční hodnotu, pokud má tabulka sloupec AUTO_INCREMENT.

Příkaz TRUNCATE TABLE nespouští spouštěče DELETE spojené s tabulkou, která je zkracována.

Na rozdíl od příkazu DELETE je počet řádků ovlivněných příkazem TRUNCATE TABLE 0, což by mělo být interpretováno jako žádná informace.

Příklad příkazu MySQL TRUNCATE TABLE

Uveďme si příklad použití příkazu TRUNCATE TABLE.

Nejprve pro ukázku vytvořte novou tabulku s názvem books:

Code language: SQL (Structured Query Language) (sql)

Poté do tabulky books vložte fiktivní data pomocí následující uložené procedury:

Code language: SQL (Structured Query Language) (sql)

Poté do tabulky books načtěte 10 000 řádků. Bude to chvíli trvat.

Code language: SQL (Structured Query Language) (sql)

Poté zkontrolujte data v tabulce books:

Code language: SQL (Structured Query Language) (sql)

Nakonec použijte příkaz TRUNCATE TABLE k odstranění všech řádků z tabulky books:

Code language: SQL (Structured Query Language) (sql)

Všimněte si, že můžete porovnat výkon mezi příkazem TRUNCATE TABLE s příkazem DELETE.

V tomto návodu jste se naučili používat příkaz TRUNCATE TABLE MySQL k efektivnímu odstranění všech dat z tabulky, zejména u velké tabulky.

  • Pomohl vám tento návod?
  • AnoNe

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.