it-swarm.com.de

lösche alle aus der Tabelle

was ist schneller

DELETE * FROM table_name;

oder

DELETE * FROM table_name where 1=1;

warum?

tut truncate table in access arbeiten?

TRUNCATE TABLE Tabellenname

133
Jaymz

Dies sollte schneller sein:

DELETE * FROM table_name;

weil RDBMS nicht schauen muss where ist was.

Du solltest mit truncate zurechtkommen, obwohl:

truncate table table_name
28
Sarfraz

Es gibt einen mySQL-Fehlerbericht aus dem Jahr 2004, der noch Gültigkeit zu haben scheint. Es scheint, dass dies in 4.x am schnellsten war:

DROP table_name
CREATE TABLE table_name

TRUNCATE table_name war DELETE FROM damals intern, ohne Leistungsgewinn.

Dies scheint sich geändert zu haben, jedoch nur in 5.0.3 und jünger. Aus dem Fehlerbericht:

[11. Januar 2005 16:10] Marko Mäkelä

Ich habe jetzt schnell TRUNCATE TABLE implementiert, das hoffentlich in MySQL 5.0.3 enthalten sein wird.

10
Pekka 웃

Dies löscht die Tabelle table_name.

Ersetzen Sie ihn durch den Namen der Tabelle, die gelöscht werden soll.

DELETE FROM table_name;
9