wahsaga: MySQL autoincrement-Feld manuell um 1 erhöhen

Beitrag lesen

hi,

Ich finde die von mir angestrebte Lösung aber eleganter,

Ist sie aber nicht.

Begründe das bitte.

Was es da zu begründen gibt, sagte ich bereits:

Du bringst eine Eigenschaft des Datensatzes an einer Stelle unter, wo das bei Betrachtung des Datenmodells absolut nicht ersichtlich ist.

Ist sie aber DOCH! So ungefähr könnte man die Diskussion hier weiterführen.

Nur, wenn du dich kindisch benehmen, und vernünftige Argumente nicht anerkennen magst.

Ich werde keine Logik auf diese ersten 100 Datensätze abbilden, sie sollen mir selbst bei manchen administrativen Aufgaben helfen, den Überblick zu behalten, da ich zum Beispiel auf _einen_ Blick sehe, das ein Datensatz in der Tabelle "comments" (mit Verknüpfung zur account-Tabelle) von einem Spezialaccount stammt.

Dass erkennst du, weil du dich erinnerst, dass du auf diese verquere Weise ein Attribut an dieser Stelle "abgelegt" hast - erkennt das ein anderer, der vielleicht mal mit deinem System arbeiten muss, auch? Erkennt er es auch, wenn er sich lediglich dein Datenmodell ansieht, ohne verbale Erklärungen dazu zur Hand zu haben, in denen du dein "unorthodoxes" Vorgehen noch mal beschreibst?

Und du erkennst es _noch_ - in einem Jahr, in fünf Jahren auch noch?

Diese Lösung ist elegant und sinnvoll.

Daran kann ich, wie gesagt, absolut nichts elegantes finden.
Du hast in deinem Supermarktregal von allen Konservendosen die Etiketten abgelöst - wo jetzt Erbsensuppe drin ist, erkennt man nur noch daran, dass diese Dosen in einer bestimmten Ecke stehen.
Wenn ich jetzt eine Dose nehme, und woanders hinstelle, kann kein Mensch mehr ohne sie zu öffnen sagen, was drin ist.

Mit der normalisierten Lösung wäre das nicht möglich, ohne Zugriff auf die account-Tabelle.

Diesen bei Bedarf herzustellen, sollte deine Applikation übernehmen.

Ich habe noch die Worte meines Datenbank-Profs im Ohr, der nichts von unbedingter Normalisierung hielt. Aufwachen, es geht um reale Problematiken und pragmatische Lösungen.

Ach ja, "pragmatisch" - das wird doch nur zu gerne verwendet, um suboptimale "Lösungen" als bestmögliche zu Verkaufen, auf wenn sie das bei objektiver Betrachtung keineswegs sind.

Aber wenn dann irgendwann die Anzahl solcher "Spezialaccounts" mal die 100 übersteigen sollte - was machst du dann?

Mach Dir mal nicht meinen Kopf. Bisher gibt es derer 2 und es ist unwahrscheinlich, dass es mal mehr werden.

Wenn du dir diesen Kopf schon nicht "machst" - obwohl du das solltest, wenn du eine vernünftig skalier- und erweiterbare Applikation aufbauen willst - dann muss es ja jemand anderes übernehmen.

Und wenn, dann kann ich mein Script nochmal anwenden und nochmal 100 freischaufeln.

Durch fröhliches weiteres Verändern der ID in solchen Fällen, wo dein Aufbau dies "brauchen" würde, nimmst du ihr ihre eigentliche Funktionalität - eindeutiges Identifizieren eines Datensatzes - also ganz nach belieben noch mehr.

Es nervt irgendwie, solche Metadiskussionen zu führen, in denen man gefragt wird, warum man den dies und jenes tun möchte.

Das hier gerne geübte kritische Hinterfragen von Vorgehensweisen kann sehr oft vor Denkfehlern bewahren - und m.E. machst du gerade einen kapitalen solchen.

gruß,
wahsaga

--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }