| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Gast
Beiträge: n/a
| Ich hab hier ein besseres Beispiel: Code: CREATE TABLE orders ( orders_id int NOT NULL auto_increment, customers_id int NOT NULL, customers_name varchar(64) NOT NULL, customers_company varchar(32), customers_street_address varchar(64) NOT NULL, customers_suburb varchar(32), customers_city varchar(32) NOT NULL, customers_postcode varchar(10) NOT NULL, customers_state varchar(32), customers_country varchar(32) NOT NULL, customers_telephone varchar(32) NOT NULL, customers_email_address varchar(96) NOT NULL, customers_address_format_id int(5) NOT NULL, delivery_name varchar(64) NOT NULL, delivery_company varchar(32), delivery_street_address varchar(64) NOT NULL, delivery_suburb varchar(32), delivery_city varchar(32) NOT NULL, delivery_postcode varchar(10) NOT NULL, delivery_state varchar(32), delivery_country varchar(32) NOT NULL, delivery_address_format_id int(5) NOT NULL, billing_name varchar(64) NOT NULL, billing_company varchar(32), billing_street_address varchar(64) NOT NULL, billing_suburb varchar(32), billing_city varchar(32) NOT NULL, billing_postcode varchar(10) NOT NULL, billing_state varchar(32), billing_country varchar(32) NOT NULL, billing_address_format_id int(5) NOT NULL, payment_method varchar(32) NOT NULL, cc_type varchar(20), cc_owner varchar(64), cc_number varchar(32), cc_expires varchar(4), last_modified datetime, date_purchased datetime, orders_status int(5) NOT NULL, orders_date_finished datetime, currency char(3), currency_value decimal(14,6), PRIMARY KEY (orders_id) ); |
|
| | |
| Erfahrener Benutzer Registriert seit: 21.05.2008
Beiträge: 9.937
![]() | Ich vermute mal das wird deshalb explizit in die Bestell-Tabelle reingeschrieben, damit nicht folgender Fehler auftreten kann: Kunde K1 meldet sich an, schreibt seine Lieferadresse und Rechnungsadresse in die Felder. Nun bestellt Kunde K1 etwas: Bestellung B1 wartet auf Abfertigung. Kunde K1 ändert seine Adresse. Kunde K1 bestellt erneut etwas. Bestellung B2 wartet auf Abfertigung. Bestellung B1 kann versendet werden. Nun könnte durch die Normalisierung der Fall eintreten, dass Bestellung B1 an die geänderte Adresse geschickt wird. Dies hat der Kunde aber nicht gewollt. Schließlich muss er sich bewußt sein, dass eine Änderung nicht rückwirkend "wirkt". Insofern würde die Tabellenstruktur Sinn machen. Ich würde trotzdem die Adressen auslagern und eben obigen Fall im Auge behalten. |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse: Fortgeschritten ![]() | Ich kann mich dem nur anschließen. Eine Bestellung ist einer unveränderlichen Rechnungs- und Lieferanschrift zugeordnet (mal vom Kundenanruf "schickt es mir doch lieber ins Büro, nicht nach Hause" abgesehen). Das ist die Willenserklärung, die der Kunde abgibt, nicht etwa "schick mir das Zeug an die Adresses, die ich zum Zeitpunkt eures Warenausgangs/Rechnungsstelung im System eingetragen hab". Aber, um Redundanzen zu vermeiden, musst du natürlich alle Adressen in eine eigene Tabelle packen und darauf dann von den einzelnen Bestellungen (je für Liefer- und Rechnungsanschrift) darauf referenzieren. Die Benutzer kanns du dann auch vielfältig mit Adressen verknüpfen (Standard-Rechnungsanschrift, Lieferanschrift 1, Liferanschrift 2 etc.). Wichtig ist dann eben, dass du diese Adress-Sätze nicht überschreibst, sondern kopierst, wenn der Benutzer seine Adressdaten ändert, aber das ist ja klar. Basti |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Zeilenanzahl einer tabelle mit WHERE aber ohne schleife? | sovereign | Datenbanken | 13 | 17.04.2006 20:34 |
| [Erledigt] Problem mit dem Füllen einer Tabelle über Formular | PHP Tipps 2006 | 18 | 10.01.2006 12:51 | |
| Problem mit Anzeige einer Tabelle mit dem Firefox? | HTML, Usability und Barrierefreiheit | 8 | 28.11.2005 15:08 | |
| [Erledigt] Tabelle aktualisieren | Datenbanken | 3 | 23.11.2005 09:54 | |
| [Erledigt] Problem mit mySQL | Datenbanken | 7 | 27.09.2005 12:06 | |
| [Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert | Datenbanken | 2 | 08.09.2005 11:59 | |
| tabelle in tabelle ohne aussenrand | noskule | HTML, Usability und Barrierefreiheit | 6 | 25.08.2005 14:17 |
| Tabelle im DIV-Container zentrieren | HTML, Usability und Barrierefreiheit | 1 | 21.04.2005 22:28 | |
| [Erledigt] Interne Tabelle (DB Tabelle in Array auslesen) | PHP Tipps 2005 | 10 | 29.03.2005 17:08 | |
| HTML Tabellenzeile in Tabelle einfügen? | Datenbanken | 2 | 28.01.2005 00:28 | |
| Tabelle in Tabelle ausrichten | HTML, Usability und Barrierefreiheit | 7 | 03.01.2005 14:32 | |
| [Erledigt] Tabelle in Tabelle automatisch anpassen | HTML, Usability und Barrierefreiheit | 3 | 04.11.2004 21:37 | |
| [Erledigt] Letzter Eintrag in einer Tabelle und Top Five einer Tabelle | Datenbanken | 2 | 27.09.2004 06:50 | |
| Sortieren anhand einer zweiten Tabelle | PHP Tipps 2004 | 6 | 20.09.2004 09:03 | |
| HILFE: Column count doesn't match value count at row 1 | Datenbanken | 17 | 12.06.2004 16:45 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| bestelltabelle vorlage, bestell tabelle, bestell datenbanken, datenbank 2 artikel tabellen zu einer bestelltabelle, bestelltabelle beispiel, decimal(12,2) not null, bestelltabelle muster, bestelltabelle java script, payment_method varchar osc, bestelltabelle, bestelltabelle php, php bestelltabelle, char(64) not null default, mysql bestelltabelle, rechnungsadresse willenserklärung, rechnungssystem php.de, html code bestelltabelle |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.