| 

.NET C# Java Javascript Exception

1
Hey Leute,

da ich mich gerade mit meinem Vorgesetzten einwenig in den Köppe hab und wir nicht auf einen trichter kommen wollt ich euch mal fragen was sinniger ist.

Ich möchte die Bezahlmethoden eines Users (Vorkasse,Rechnung,Nachname, Lastschrift) gerne in einer MySql Tabelle abspeichern. Wenn z.b. ein User die Bezahlmethoden Vorkasse und Rechnung besitzt, dann würde ich meiner meinung Nach ein JSON object in einer spalte payment_methods abspeichern.

Mein Vorgesetzter ist da anderer Meinung:
Er würde lieber für jede Bezahlmethode eine eigene Spalte anlegen und dort 0 oder 1 reinschreiben.

Was haltet ihr für Sinnvoller?
11.08.2011
Gast
11 2
3 Antworten
5
Hallo Neues Mitglied,

Wenn ich zwischen den beiden beschriebenen Methoden wählen müsste, würde ich die mit dem JSON-Objekt nehmen. Andernfalls müsste man ja immer wenn eine neue Methode hinzukommt das Datenbankschema ändern.

Falls ich noch eine 3. Methode vorschlagen darf: Alle verfügbaren Bezahlmethoden in eine neue Tabelle packen und nur die ID der Bezahlmethode speichern.

Viele Grüße,
Tachyon
11.08.2011
Tachyon 690 7
1
Der 3. Methode kann ich nur zustimmen +1
http://de.wikipedia.org/wiki/Normalisierung_(Datenbank)
Martin Fuchs 11.08.2011
1
Würde ebenfalls die 3. Methode verwenden.
mrmee 11.08.2011
0
Hey, sorry bin kein neues Mitglied, hatte mich nur vergessen einzuloggen :)

Okay, aber dann muss ich zwangsläufig beim speichern immer alle Zahloptionen löschen und neu einfügen. Damit keine doppelte Einträge vorhanden sind oder?
11.08.2011
spiike 170 1 7
Ich glaube Tachyon hat das so gemeint. Du erstellst eine Tabelle "ZAHLUNGSMETHODE" in der du deine verschiedenen Methoden speicherts ID: 0 MEHTODE: Rechnung
ID: 1 METHODE: Überweisung
usw. In der anderen Tabelle nur mehr die ID speichern. Wenn eine neue Mehtode hinzukommt, diese einfach wieder speichern.
mrmee 11.08.2011
okay, ich habe gedacht das er meinte ich sollte es so ablegen :

id_User, id_method, payment_method...

okay, zur späteren Handhabung was die bezeichnungen angeht ist dies bestimmt eine bessere Methode. Jedoch ist es ja dann trotzdem sinnvoll es als json object abzulegen auch wenn dann nur die ID in dem Object stehen nech?
spiike 11.08.2011
0
Irgendwie glaub ich, daß MySQL SET das ist, was Du suchst.
Du definierst einfach die Zahlungsmethoden als SET und wählst beim INSERT oder UPDATE eben die aus, die für den Kunden in Frage kommen.
Klar, wenn eine Option hinzukommt, mußt Du das SET in der Datenbank erweitern, aber die Änderungen ist minimal und wenn eine Option wegfällt wär das auch nicht tragisch, dann nimmst Du nämlich einfach nur die entsprechende Option aus dem SET raus und den Rest macht MySQL.
12.08.2011
lunatigs 1,3k 2 8

Stelle deine Php-Frage jetzt!