Sven Rautenberg: Warning bei der Ausgabe von Datensätze

Beitrag lesen

Moin!

habe mir soeben eine Query zusammengebastelt und hätte Fragen dazu.

Ich auch.

  1. Die Query hat 3 Selects. Sieht das ganze grob Perfomancelastig aus?

Das erzählt dir ein EXPLAIN vor dem Query.

Ansonsten meine Fragen zu deinem Code:

1. Warum baust du Tippfehler in die Spaltenbezeichner ein? Das macht die Codepflege extrem aufwendig, weil man normalerweise einen menschenverständlichen Begriff eben nicht falsch tippt - damit aber logischerweise den Query zerstört.

Damit meine ich die Spalten
blogingid -> blogging_id
blogerid  -> blogger_id
mitglidsname -> mitgliedsname
priatvsphaere -> privatsphaere

2. Deine Alias-Bezeichner für die einzelnen Tabellen mit A und B zu wählen halte ich ebenfalls für ungünstig. Nimm doch einfach einen sprechenderen Kurzbezeichner, zum Beispiel den ersten Buchstaben der Tabelle. Dann kommt es nämlich nicht zu der Kuriosität, dass die Tabelle "Blogeinträge" mit A und "Mitglieder" mit B abgekürzt wird (und in anderen Querys auch mal anders herum), sondern "Blogeinträge" ist immer "B", und "Mitglieder" ist immer "M" - in jedem Query.

3. Dein Feld "privatsphaere" hat ganz offensichtlich den falschen Typ. Du benutzt manuelle Bitschiebereien und Maskierungen, um dort in einem Bitfeld diverse Berechtigungsschemata zu speichern. Aber für genau diese Anwendungen gibt es die wunderbare Erfindung von "SET" - die den unschätzbaren Vorteil hat, dass man zum einen nicht kompliziert mit Shiften und Bitmaskierung sehr fehleranfällig die korrekten Bits setzen muß, sondern im Klartext mit sprechenden Bezeichnern arbeiten kann, und mit sinnvollen, logischen Operationen.

- Sven Rautenberg

--
"Love your nation - respect the others."