Kurze Spaltennamen wegen Weiterverarbeitung in PHP und trotzdem erläuternd

dascheberg

Benutzer
Beiträge
10
Moin, ich habe (für mich) folgendes Problem:
beim Erstellen der Tabellen einer DB - eine Checkliste für die Abarbeitung von Prozessschritten - würde ich normalerweise die Spaltennamen sprechend ausführen, z.B. "c1_einrastenFaltarretierung". Da ich nicht nur ein paar Felder in mehreren Tabellen habe und ich die Antworten aus einem Webformular speisen will, müsste ich bei den Zuweisungen immer diesen komplexen Spaltennamen benutzen bzw. vorher einer Variablen zuweisen. Kann ich auch einer Spalte einen "Titel" zuweisen? Beispiel Spalte heißt "c1_1" und der Titel heißt "einrastenFaltarretierung"? Wenn es eine solche Möglichkeit gibt: kann ich darüber dann auch eine SELECT laufen lassen?
Bin dankbar für Ideen und auch für Vorschläge, wie ich dieses für mich vorhandene Problem lösen kann, da ich bei der Datenbankmodellierung nicht so firm bin (meine sonstigen Ausflüge hierhin befassten sich immer nur mit einer überschaubaren Anzahl von Feldern).
 
Werbung:
Erstmal Danke für die Antwort.
Hilft mir nicht so richtig. Aliase nutzen mir zwar bei hinterlegten Abfragen, aber dann funktionieren "externe", also von anderen die gesamte Struktur nicht so genau kennende Personen, Abfragen auch nur mit Aliasen, soweit ich das verstanden habe. Kommentare geben Erläuterungen, kürzen den in PHP zu erstellenden Code nicht ab.
Die Frage geht mehr in die Richtung an die Profis der Datenbankmodellierung. Wie macht ihr das, wenn ihr lange Beschreibungen für Tabellenspalten habt, die aber mit kurzen Namen nutzen wollt?
 
Wofür sind die Beschreibungen? Wer braucht diese denn?
Soll das offen sein, dass beliebige Personen Abfragen schreiben können oder brauchen das nur die PHP Entwickler?
 
Es geht um die Digitalisierung einer Checkliste. Wir haben Positionen wie "
LenkerLagerVerstellbar
LenkerHaftschmierfett
Lenkerklemmhebelnachgezogen
FunktionTacho
FunktionLicht
FunktionBremslicht
FunktionHupe
AnzahlAkkuBalken
BowdenzugverteilerRunterGeschoben

und wollen das in Eigenregie entwickeln. Da ich inzwischen knapp 67 Jahre alt bin und in der Firma (meines Sohnes) so keiner ist, der das von der Datenbankseite begleiten kann, ist mein Wunsch einerseits, dass die Namen verständlich sind und andererseits möchte ich große Schreibarbeit bei der Erstellung der Webseite vermeiden. Und hier fehlt mir jetzt der Gedanke für die richtige Vorgewhensweise. Vielleicht kann mir ja auch jemand mit einer Idee, wie ich das händeln kann, helfen.
 
Nur wegen der Schreibarbeit?
Mit Hilfe entsprechender IDE's muss man z.B. gar nicht schreiben. Oder man hat eine Doku und kopiert die Namen in den Code.
 
Nur wegen der Schreibarbeit?
Mit Hilfe entsprechender IDE's muss man z.B. gar nicht schreiben. Oder man hat eine Doku und kopiert die Namen in den Code.
Was nennst du eine entsprechende IDE? Ich habe nur phpmyadmin und Rapid CSS 2020 im meinen Code zu schreiben. Und nochmal zur Klarstellung: das ist mein Hobby, welches ich mir als Autodidakt beigebracht habe, kein Guru.
 
Wir haben Positionen wie "
LenkerLagerVerstellbar
LenkerHaftschmierfett
Lenkerklemmhebelnachgezogen
FunktionTacho
FunktionLicht
FunktionBremslicht
FunktionHupe
AnzahlAkkuBalken
BowdenzugverteilerRunterGeschoben

Wenn Du das als Spaltennamen einer Tabelle nimmst, machst Du PRINZIPIELL schon mal ALLES falsch. Das sind mit Sicherheit Merkmale, die sich ändern können. Also es können neue dazukommen. Du packst dann immer und immer wieder das Tabellendesign an. Das ist FAIL von der ersten Millisekunde an.
 
Wenn Du das als Spaltennamen einer Tabelle nimmst, machst Du PRINZIPIELL schon mal ALLES falsch. Das sind mit Sicherheit Merkmale, die sich ändern können. Also es können neue dazukommen. Du packst dann immer und immer wieder das Tabellendesign an. Das ist FAIL von der ersten Millisekunde an.
Mit Antworten, die mir sagen dass ich ein Depp bin, kann ich nichts anfangen und es hilft mir auch nicht weiter.
 
Gut, das war jetzt Deine zweite Antwort, die eher nur 'mir egal, was Du sagst' ausdrücken. Dann laß ich Dich einfach mal machen... das mit Normalisierung und so ist dann wohl nix für dich. Viel Spaß damit.
 
Man sollte eine DB nicht wie eine Tabellenkalkulation betrachten. Die Positionen der Checkliste gehören nicht als eigene Spalten, da bei Änderungen die DB aktualisiert werden muss.

EDIT:
Ich habe gerade RapidPhp2020 getestet (k.a. ob Rapid CSS das auch kann, aber für Php Entwicklung wäre Rapid Php in dem Fall eher geeignet) und hier hat man z.B. einen SQL Browser und man kann Spalten Namen einfach in den Quellcode ziehen. Da muss man dann nichts tippen, egal wie lang die Spalte ist. Man vertippt sich dann auch nicht!
 
Zuletzt bearbeitet:
Der Ablauf der Fahrzeugüberprüfung wird sich sicherlich mal ändern, was wir aber z. Z. möchten, ist einerseits der Überprüfung einen Faden / einen Weg zu geben und andererseits nachher Abfragen darüber erstellen zu können, was war mit dem Lenker oder was war mit den Bremsen. Dies muss flexibel sein. Man Ansatz ist nicht richtig, dass weiß ich, deswegen habe ich diesen Beitrag angefangen. Ich brauche einen Tipp wie ich es richtig angehen.
 
Man sollte eine DB nicht wie eine Tabellenkalkulation betrachten. Die Positionen der Checkliste gehören nicht als eigene Spalten, da bei Änderungen die DB aktualisiert werden muss.

EDIT:
Ich habe gerade RapidPhp2020 getestet (k.a. ob Rapid CSS das auch kann, aber für Php Entwicklung wäre Rapid Php in dem Fall eher geeignet) und hier hat man z.B. einen SQL Browser und man kann Spalten Namen einfach in den Quellcode ziehen. Da muss man dann nichts tippen, egal wie lang die Spalte ist. Man vertippt sich dann auch nicht!
Das ist doch schon mal ein Tipp. Danke.
 
Gut, das war jetzt Deine zweite Antwort, die eher nur 'mir egal, was Du sagst' ausdrücken. Dann laß ich Dich einfach mal machen... das mit Normalisierung und so ist dann wohl nix für dich. Viel Spaß damit.
Wenn Du mir Tipps gegeben hättest wie: "Du musst normalisieren um das hinzukriegen" wäre es hilfreich gewesen und ich hätte in diese Richtung schauen können. Da Du das aber anscheinend nicht willst, lese ich eben und schaue was Du hast meinen können. Dafür Danke.
 
Werbung:
Wenn Du mir Tipps gegeben hättest wie: "Du musst normalisieren um das hinzukriegen" wäre es hilfreich gewesen und ich hätte in diese Richtung schauen können. Da Du das aber anscheinend nicht willst,

... wir wissen schlicht zu wenig von dem, was Du machen willst. Hier scheint ein typisches XY Problem – Wikipedia - Problem vorzuliegen. Das Problem sind nicht lange Spaltennamen, sondern falsches Tabellendesign. Dies wird aber erst allmächlich sichtbar. Du brauchst keine Checkliste mit allen möglichen Prüfschritten jeweils als Spalte, sondern eine Tabelle mit z.B. ID, Timestamp, Prüfschritt (gern als Foreign Key auf eine passende Tabelle aller möglichen Prüfschritte) und dem Ergebniss der Prüfung. Damit kannst Du JEDERZEIT neue Prüfschritte definieren (als neue Zeile in Deiner Tabelle der möglichen Prüfschritte), ohne am Tabellendesign und/oder der Programmierung was ändern zu müssen.
 
Zurück
Oben