Delphi-PRAXiS
Seite 3 von 6     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Wieder mal die Tabellenstrukturen (https://www.delphipraxis.net/192769-wieder-mal-die-tabellenstrukturen.html)

stOrM 18. Mai 2017 14:13

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von p80286 (Beitrag 1371922)
Zitat:

Zitat von stOrM (Beitrag 1371904)
Das Problem ist doch das ich es nicht weiß wie die Tabellen richtig gestaltet werden müssen, wenn ich das wüsste könnte ich das ja berücksichtigen.
Also fällt wohl Variante 1 raus, die Preise können sich täglich ändern.

Du mußt wissen welche Daten Du benötigst, und welche sich ändern könnten etc.
Der Datenbankdesigner macht dann daraus Tabellen....

Und wenn er "AngebotsID" und "ProduktPK" fröhlich durcheinander nutzt, muß er schon ganz gut sein um das so entstandene Chaos in 3 Monaten auf den ersten Blick zu überschauen.
Aber warum einfach wenn es auch kompliziert geht. (Du bist übrigens nicht der einzige, der so arbeitet)

Gruß
K-H

Amen... Sehr konstruktiv, dann hast Du sicherlich am Anfang alles sofort richtig gemacht denke ich mal. Respekt!
Allerdings verstehe ich den Einwand grad nicht wie soll ich die ID mit der PK durch einander würfeln, deshalb steht bei dem einen ja ID und beim anderen PK, kann aber auch sein das ich Dir jetzt nicht folgen kann.

Olli73 18. Mai 2017 14:13

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von stOrM (Beitrag 1371917)
Schau mal bitte Olli, neue Struktur.

Sieht auf den ersten Blick ganz gut aus. Nur die Einheiten hast du glaube ich noch nicht verwendet. Die müssten mindestens in die Produkttabelle.

stOrM 18. Mai 2017 14:14

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von Olli73 (Beitrag 1371926)
Zitat:

Zitat von stOrM (Beitrag 1371917)
Schau mal bitte Olli, neue Struktur.

Sieht auf den ersten Blick ganz gut aus. Nur die Einheiten hast du glaube ich noch nicht verwendet. Die müssten mindestens in die Produkttabelle.

Ok hab ich nun.

Jumpy 18. Mai 2017 14:26

AW: Wieder mal die Tabellenstrukturen
 
Ich weiß ja jetzt nicht, ob das nur ein Übungs-Projekt ist, oder es um was konkretes geht?
In letzterem Fall müsste man sich ggf. noch Gedanken machen:
- Gültigkeit eines Angebotes (ala "An dieses Angebot halten wir uns bis zum XXX gebunden")
- Varianten oder Alternative Positionen (gibts bei Handwerkern oft)

jobo 18. Mai 2017 14:56

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von Jumpy (Beitrag 1371930)
Ich weiß ja jetzt nicht, ob das nur ein Übungs-Projekt ist, oder es um was konkretes geht?
In letzterem Fall müsste man sich ggf. noch Gedanken machen:
- Gültigkeit eines Angebotes (ala "An dieses Angebot halten wir uns bis zum XXX gebunden")
- Varianten oder Alternative Positionen (gibts bei Handwerkern oft)

Ich finde das Modell von Mikal ganz gut. In Bezug auf Jumpys Anmerkungen würde ich da den einzigen Knackpunkt sehen im Bereich Angebotsgültigkeit und Preisgültigkeit. Das kann sich so wie es modelliert ist widersprechen, sofern eine Angebotsgültigkeit eingesetzt wird (ist ja nicht unüblich)
Auch ist der Fehler mit dem Gesamtpreis aus dem 1. Modell raus. Der wird errechnet, nicht abgelegt.

haentschman 18. Mai 2017 15:13

AW: Wieder mal die Tabellenstrukturen
 
Hallöle...:P
Da sind ja gute Anworten dabei...:thumb:
Zitat:

Allerdings verstehe ich den Einwand grad nicht wie soll ich die ID mit der PK durch einander würfeln
Der Einwand ist folgender. Ein Feldname sollte sinngemäß den Inhalt darstellen. ProduktPK ist die eindeutige ID des Datensatzes in der Produkt Tabelle. Das Feld, in der Produkt Tabelle, muß ja nicht unbedingt einen PK haben. Der PK ist ein "Zustand" des Feldes und hat damit nichts im Namen verloren. 8-) Deshalb besser ProduktID...:wink:

stOrM 18. Mai 2017 15:23

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von haentschman (Beitrag 1371942)
Hallöle...:P
Da sind ja gute Anworten dabei...:thumb:
Zitat:

Allerdings verstehe ich den Einwand grad nicht wie soll ich die ID mit der PK durch einander würfeln
Der Einwand ist folgender. Ein Feldname sollte sinngemäß den Inhalt darstellen. ProduktPK ist die eindeutige ID des Datensatzes in der Produkt Tabelle. Das Feld, in der Produkt Tabelle, muß ja nicht unbedingt einen PK haben. Der PK ist ein "Zustand" des Feldes und hat damit nichts im Namen verloren. 8-) Deshalb besser ProduktID...:wink:

Ok, gebongt.
Ist das jetzt soweit durch oder anders, was ist mit dem Einwand, der korrekt ist bezüglich Handwerker Angebot bis zu einer gewissen Zeit gültig?
Was mach ich denn jetzt mit dem ganzen Tabellensalat...:shock:

Nur des Verständnisses wegen erstmal, warum haben einige Tabellen jetzt eigentlich doppelte Feldeinträge?
Also z.B. 2x EPreis usw? Muss das so?

p80286 18. Mai 2017 15:25

AW: Wieder mal die Tabellenstrukturen
 
Also ob man den "Primarykey" mit PK oder ID oder Key oder .. benennt ist egal(aber ID ist schon nicht schlecht), aber er sollte in einer Datenbank immer den gleichen Namen tragen.

Zitat:

Zitat von Jumpy (Beitrag 1371930)
Ich weiß ja jetzt nicht, ob das nur ein Übungs-Projekt ist, oder es um was konkretes geht?
In letzterem Fall müsste man sich ggf. noch Gedanken machen:
- Gültigkeit eines Angebotes (ala "An dieses Angebot halten wir uns bis zum XXX gebunden")
- Varianten oder Alternative Positionen (gibts bei Handwerkern oft)

:thumb:
Solange er nur spielt, reichen ja auch allgemeine Hinweise. Soll es etwas konkretes werden, wäre zu überlegen ob z.b. eine Angebotspreistabelle und eine AuftragsPreistabelle notwendig wären. Und zuvor soll ein erstelltes Angebot in der DB verfügbar sein, oder reicht ein Ausdruck. Alleine dies würde das Design ja massiv beeinflussen.

Gruß
K-H

stOrM 18. Mai 2017 15:27

AW: Wieder mal die Tabellenstrukturen
 
Zitat:

Zitat von p80286 (Beitrag 1371944)
Also ob man den "Primarykey" mit PK oder ID oder Key oder .. benennt ist egal(aber ID ist schon nicht schlecht), aber er sollte in einer Datenbank immer den gleichen Namen tragen.

Zitat:

Zitat von Jumpy (Beitrag 1371930)
Ich weiß ja jetzt nicht, ob das nur ein Übungs-Projekt ist, oder es um was konkretes geht?
In letzterem Fall müsste man sich ggf. noch Gedanken machen:
- Gültigkeit eines Angebotes (ala "An dieses Angebot halten wir uns bis zum XXX gebunden")
- Varianten oder Alternative Positionen (gibts bei Handwerkern oft)

:thumb:
Solange er nur spielt, reichen ja auch allgemeine Hinweise. Soll es etwas konkretes werden, wäre zu überlegen ob z.b. eine Angebotspreistabelle und eine AuftragsPreistabelle notwendig wären. Und zuvor soll ein erstelltes Angebot in der DB verfügbar sein, oder reicht ein Ausdruck. Alleine dies würde das Design ja massiv beeinflussen.

Gruß
K-H

Hmm gute Idee, wobei sich mir da jetzt unwissender Weise wieder die nächste Frage auftut.
Wenn ich ein Angebot einmal in der Tabelle habe, der Kunde sich irgendwann zum Zeitpunkt X entschliesst ok, machen wir. Würde es dann nicht reichen das Angebot so wie es dann vorliegt einfach in die Rechnungstabelle zu kopieren? Oder muss man das ganze dann direkt nochmals anlegen? also mit allen Tabellen und ggf noch weiteren?

mikhal 18. Mai 2017 15:35

AW: Wieder mal die Tabellenstrukturen
 
Angebotsgültigkeit ist ein Problem für sich: Hier reicht eigentlich ein Datumsfeld, um die Gültigkeit des Angebots zu prüfen.

Anders sieht es aus, wenn von einem Angebot verschiedene Versionen im Umlauf sind, wenn zum Beispiel das Angebot nachgebessert wird. Dann wird es richtig aufwändig. War hier aber nicht gefragt.

Stichwort Tabellensalat: Ich habe dir nicht umsonst ein sehr plattes, aber halbwegs normalisiertes Datenmodel geschickt. In der Grafik (die hier recht klein ausgefallen ist) sind die Beziehungen (Relationen) zwischen den Tabellen aufgezeichnet. Die helfen dir bei der Zuordnung der einzelnen Datenfelder.

@Haentschman: Grundsatz, den ich bereits vor 30 Jahren lernen musste: Eine Datenbanktabelle ohne Primary Key ist BÄH! JEDE Tabelle - und wenn sie noch so klein ist - muss einen PK haben! In meiner Notation ist das immer das Feld mit dem Namen ID (den Präfix spare ich mir mal).

Grüße
mikhal


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:07 Uhr.
Seite 3 von 6     123 45     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz