Einzelnen Beitrag anzeigen
  #1  

Standard Standardantwort zu SELECT *

 

Standardantworten - Inhalte

Beim Einsatz von SQL-Datenbanken sollte das Abrufen aller Spalten eines Datensatzes per SELECT * vermieden werden. Stattdessen sollten die gewünschten Spaltennamen explizit aufgelistet werden (SELECT col1, col2 FROM …). Einige Vorteile:
  • Häufig werden in einer Abfrage nicht alle Spalten benötigt, die aktuell existieren oder in Zukunft existieren könnten, sodass unnötige Daten übertragen werden.
  • Bei expliziter Angabe der gewünschten Spalten können Datenbanksysteme unter Umständen Indizes zur Beantwortung von Abfragen nutzen.
  • Eine Auflistung der Spaltennamen macht den Code verständlicher, da die Tabellenstruktur nicht erst im Datenbankschema nachgelesen werden muss.
  • Bei Änderungen am Datenbankschema (etwa bei Entfernung oder Umbenennung einer Spalte) schlägt eine Query, die kein SELECT * nutzt, sofort fehl. Das ist hilfreich, da so keine Stelle im Code übersehen werden kann, an der wahrscheinlich auch die PHP-Datenstrukturen an das neue Schema angepasst werden müssen.

Unproblematisch ist der Einsatz des Sternchens in SELECT COUNT(*).

« Vorheriges Kapitel   Standardantworten
  Nächstes Kapitel »

Mitwirkende: Marc Ermshaus
Erstellt von Marc Ermshaus, 17.06.2017 am 22:50
Zuletzt bearbeitet von Marc Ermshaus, 17.06.2017 am 22:50
0 Kommentare , 5761 Betrachtungen

Dieser Text steht unter der GNU-Lizenz für freie Dokumentation