On 02.05.2017 19:26, Benno Müller wrote:
> wenn ich diese queries in phpMyAdmin, in einer Db "Zunder" starte
>
> CREATE TEMPORARY TABLE IF NOT EXISTS temp( id mediumint(6), ord VARCHAR( 35
> ) );
>
> Wo kann ich die temp-Tabelle sehen?
Gar nicht. Temporäre Tabellen existieren nur im Kontext einer Session
(vulgo: Verbindung) zwischen MySQL-Server und -Client. Sobald die Session
beendet (die Verbindung getrennt) wird, ist die temporäre Tabelle weg.
Als PHP-Anwendung kann phpMyAdmin aber keine MySQL-Verbindung über
Seitenaufrufe hinweg aufrecht erhalten. Jeder neue HTTP-Seitenaufruf öffnet
eine neue MySQL-Verbindung, die nach dem Ausliefern der Seiteninhalte wieder
geschlossen wird. Deswegen kann man temporäre Tabelle (und User- Variablen,
Session-Variablen etc.) mit phpMyAdmin nur sehr eingeschränkt benutzen. Das
ist einer der Hauptkritikpunkte an phpMyAdmin, der es für ernsthafte
DBA-Tätigkeiten disqualifiziert.
Verwende einen Client, der Verbindungen korrekt managed. Im einfachsten Fall
reicht schon der Kommandozeilen-Client 'mysql'.