Unterschied zwischen Heap-Tabelle und temporärer Tabelle in MySQL?

9

Ich bin sehr neu in MySQL. Meine Frage könnte falsch sein, wenn es bitte korrigiert oder erklärt wird.

Ich lese gerade über die Heap-Tabelle und die temporäre Tabelle, indem ich die Definition in Google suche. Was ist der genaue Unterschied zwischen beiden und der Echtzeitnutzung von beiden?

Nach meinem Wissen oder was ich gelesen habe:

Heap-Tabelle : Tabellen, die im Speicher vorhanden sind, werden als HEAP-Tabellen bezeichnet. Beim Erstellen einer HEAP-Tabelle in MySql muss der Benutzer TYPE als HEAP angeben. Diese Tabellen werden jetzt häufiger als Speichertabellen bezeichnet. Diese Speichertabellen haben niemals Werte mit dem Datentyp "BLOB" oder "TEXT". Sie verwenden Indizes, die sie schneller machen.

Temporäre Tabelle : Die temporären Tabellen können in manchen Fällen sehr nützlich sein, um temporäre Daten zu speichern. Temporäre Tabelle bedeutet, dass sie gelöscht werden, wenn die aktuelle Client-Sitzung beendet wird.

    
Prashant Shilimkar 06.08.2013, 07:11
quelle

1 Antwort

8

Während Sie sich selbst zitiert haben, sind temporäre Tabellen nur während der Sitzung gültig, während Heap-Tabellen im Speicher vorhanden sind. So kann eine Heap-Tabelle für eine lange Zeit bestehen, wenn Sie Ihre Datenbank nicht neu starten.

Die temporäre Tabelle wird gelöscht, sobald Ihre Sitzung getrennt wird.

Temporäre Tabellen werden nicht zwischen Clients aufgeteilt, Heap-Tabellen werden gemeinsam genutzt. So ist die temporäre Tabelle für jede Verbindung eindeutig, für eine zweite Verbindung sind die temporären Tabellen einer anderen Verbindung nicht vorhanden.

Für temporäre Tabellen benötigen Sie eine spezielle Berechtigung (temporäre Tabelle erstellen), während Heap-Tabellen nur eine andere Speicher-Engine sind.

    
John 17.03.2014 04:21
quelle

Tags und Links