Die Lösung (sortierte Spaltennamen) und warum das Quatsch ist
bearbeitet von Regina Schaukrug> Man könnte mal testen, ob Erstellungsreihenfolge = Reihenfolge bei Select * gilt.
Das funktioniert in der Praxis tatsächlich (hab ich mal getestet). Man kann sogar beim Ändern einer Tabelle eine Spalte an einer bestimmten Stelle einfügen.
~~~
ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition
[FIRST | AFTER col_name]
~~~
Allerdings ist dieses Verhalten nicht wirklich garantiert und gilt daher (und weil der DB-Admin nichts von der Wichtigkeit einer Reihenfolge der Spalten weiß) trotz der Verifizierbarkeit in Tests als **"zufällig"**.
Und `SELECT *` verbietet sich jenseits der Schnellabfrage in der MySQL-Shell aus Gründen, die sich schon herumgeprochen haben sollten. Die Spalten sind bei "normalen" Programmen durch den "Plan vom Großen und Ganzen" bestimmt und bekannt - also kennt man die auch ohne Abfrage und kann sie (wenn man will wie man will) sortieren.
Es sei denn, wie gesagt, man will etwas wie den phpMyAdmin neu schreiben. Aber das ist vorliegend wohl ein fern liegendes Ziel.
Die Lösung (sortierte Spaltennamen) und warum das Quatsch ist
bearbeitet von Regina Schaukrug> Man könnte mal testen, ob Erstellungsreihenfolge = Reihenfolge bei Select * gilt.
Das funktioniert in der Praxis tatsächlich (hab ich mal getestet). Allerdings ist dieses Verhalten **weder in MySQL, noch MariaDB, noch in den Zugriffsbibliotheken (hier mysqli) dokumentiert oder gar garantiert** und gilt daher trotz der Verifizierbarkeit in Tests als **"zufällig"**.
Und `SELECT *` verbietet sich jenseits der Schnellabfrage in der MySQL-Shell aus Gründen, die sich schon herumgeprochen haben sollten. Die Spalten sind bei "normalen" Programmen durch den "Plan vom Großen und Ganzen" bestimmt und bekannt - also kennt man die auch ohne Abfrage und kann sie (wenn man will wie man will) sortieren.
Es sei denn, wie gesagt, man will etwas wie den phpMyAdmin neu schreiben. Aber das ist vorliegend wohl ein fern liegendes Ziel.
Die Lösung (sortierte Spaltennamen) und warum das Quatsch ist
bearbeitet von Regina Schaukrug> Man könnte mal testen, ob Erstellungsreihenfolge = Reihenfolge bei Select * gilt.
Das funktioniert in der Praxis tatsächlich (hab ich mal getestet). Allerdings ist dieses Verhalten **weder dokumentiert noch garantiert** und gilt daher trotz der Verifizierbarkeit in Tests als **"zufällig"**.
Und `SELECT *` verbietet sich jenseits der Schnellabfrage in der MySQL-Shell aus Gründen, die sich schon herumgeprochen haben sollten. Die Spalten sind bei "normalen" Programmen durch den "Plan vom Großen und Ganzen" bestimmt und bekannt - also kennt man die auch ohne Abfrage und kann sie (wenn man will wie man will) sortieren.
Es sei denn, wie gesagt, man will etwas wie den phpMyAdmin neu schreiben. Aber das ist vorliegend wohl ein fern liegendes Ziel.