dedlfix: PHP MySQL Datenbank durchsuhen

Beitrag lesen

echo $begrüßung;

Gibt es denn Gründe, warum man "SELECT *" verwenden sollte?

Ein * liefert genau das was seine Aufgabe ist: alle Spalten. Wenn man das haben möchte, warum soll man ihn dann nicht einsetzen? Ungenommen davon bleibt, das mögliche geänderte Aufgabenstellungen in der Zukunft angemessen berücksichtigt werden müssen.

Oder anders gesagt: was spricht dagegen, es generell zu vermeiden?

Es spricht nichts dagegen, wenn jemand für sich entscheidet, dass er den * nicht verwendet. Die nicht generell vorhandenen negativen Auswirkungen sprechen aber gegen eine generelle Ablehnung und das Propagieren dieser als unumstößliches Dogma.

Ist Dir irgendein Anwendungsfall bekannt, bei dem es sinnvoller, hilfreicher oder gar "richtiger" wäre, "SELECT *" zu verwenden?

Der * hat seine bekannte Eigenschaft. Wenn ich diese haben will, kann ich da auch einen Vorteil darin sehen, dass ich nicht darauf achten muss, alle Spaltennamen hinschreiben zu müssen und keine dabei zu vergessen. Auch in der Zukunft kann es sein, dass ich nach einer Erweiterung der Tabelle immer noch alle Spalten brauche. Oder aber auch nicht, was abhängig vom konkreten Fall ist und nicht generell geklärt werden kann.

Wenn ich folgende "Entscheidungshilftabelle" zugrundelege,

Eine Entscheidungshilfe ohne konkret zu entscheidenden Fall halte ich nicht für besonders ergiebig.

Kurz gesagt: was - außer Tippfaulheit - spricht für "SELECT *"?

Es geht mir nicht um die generelle Klärung der Frage. Ich maße mir nicht an, allgemeingültige Grundsätze aufstellen zu können. Es geht mir darum, dass man die Entscheidung für oder gegen etwas bewusst in einem konkret vorliegenden Anwendungsfall trifft. Denn erst dann kann man entscheiden, ob die Eigenschaften für diesen Fall positiv oder negativ zu werten sind und seine (Einzelfall-)Entscheidung treffen.

Wenn Du mir dafür einen nachvollziehbaren Grund nennen kannst, bin ich bereit, von meinem kategorischen NEIN abzurücken ...

Ich propagiere nicht den * als allein selig machende Errungenschaft, doch sehe ich auch keinen Grund, ihn als das Werk des Gehörnten zu verdammen.

Wir beide werden uns sicher nicht einigen können. Ich werde nicht zu einem Verfechter der bedingungslosen Ablehnung von SELECT * und du wirst vermutlich nicht von deiner Meinung gegen den * abrücken, was dein gutes Recht ist und ich dir auch nicht auszureden gedenke. Doch gelegentlich werde ich dagegen protestieren, wenn es jemand SELECT * als generellen, unverzeihlichen Fehler verkaufen will.

echo "$verabschiedung $name";