MySQL TRUNCATE TABLE

Összefoglaló: ebben a bemutatóban megtanulja, hogyan használja a MySQL TRUNCATE TABLE utasítást egy táblázat összes adatának törlésére.

A MySQL TRUNCATE TABLE utasítás bemutatása

A MySQL TRUNCATE TABLE utasítással törölhetünk minden adatot egy táblázatból.

Logikailag a TRUNCATE TABLE utasítás olyan, mint egy DELETE utasítás WHERE záradék nélkül, amely törli az összes sort egy táblázatból, vagy egy DROP TABLE és CREATE TABLE utasításokból álló sorozat.

A TRUNCATE TABLE utasítás azonban hatékonyabb, mint a DELETE utasítás, mivel törli és újra létrehozza a táblát ahelyett, hogy egyesével törölné a sorokat.

Íme aTRUNCATE TABLE utasítás alapvető szintaxisa:

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

Ebben a szintaxisban a TRUNCATE TABLE kulcsszavak után megadja annak a táblának a nevét, amelynek minden adatát törölni kívánja.

A TABLE kulcsszó opcionális. Azonban jó gyakorlat a TABLE kulcsszó használata a TRUNCATE TABLE utasítás és a TRUNCATE() függvény megkülönböztetésére.

Ha van FOREIGN KEY korlátozás más táblákból, amelyek hivatkoznak a csonkított táblára, a TRUNCATE TABLE utasítás sikertelen lesz.

Mert a truncate művelet implicit commitot okoz, ezért nem lehet visszavonni.

A TRUNCATE TABLE utasítás visszaállítja az AUTO_INCREMENT oszlop értékét a kezdőértékre, ha a táblában van AUTO_INCREMENT oszlop.

A TRUNCATE TABLE utasítás nem indítja el a csonkított táblához kapcsolódó DELETE triggereket.

A DELETE utasítással ellentétben a TRUNCATE TABLE utasítás által érintett sorok száma 0, ami úgy értelmezendő, hogy nincs információ.

MySQL TRUNCATE TABLE példa

Mutatunk egy példát a TRUNCATE TABLE utasítás használatára.

Először hozzunk létre egy új, books nevű táblát a bemutatóhoz:

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

Ezután a következő tárolt eljárással illesszünk be dummy adatokat a books táblába:

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

Ezután töltsünk be 10 000 sort a books táblába. Ez eltart egy ideig.

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

Ezután ellenőrizze az adatokat a books táblában:

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

Végül a TRUNCATE TABLE utasítással törölje az összes sort a books táblából:

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

Megjegyezzük, hogy összehasonlíthatja a TRUNCATE TABLE és a DELETE utasítás teljesítményét.

Ezzel a bemutatóval megtanulta, hogyan használhatja a MySQL TRUNCATE TABLE utasítást az összes adat hatékony törlésére egy táblából, különösen nagy táblák esetében.

  • Hasznos volt ez a bemutató?
  • IgenNem

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.