AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Paradox, index, gleiche werte
Thema durchsuchen
Ansicht
Themen-Optionen

Paradox, index, gleiche werte

Ein Thema von bomberpilot80 · begonnen am 30. Jun 2003 · letzter Beitrag vom 3. Jul 2003
Antwort Antwort
bomberpilot80

Registriert seit: 27. Mär 2003
8 Beiträge
 
#1

Paradox, index, gleiche werte

  Alt 30. Jun 2003, 22:49
Hallo,
ich habe da ein Problem. ist vermutlich nur eine Kleinigkeit, bekomme es aber einfach nicht hin.

Gegeben sind drei Tabellen:

Kunden
- Kunden_ID
- Name
- Strasse
- ...

Produkte
- Produkt_ID
- Bezeichnung
- Preis

Bestellung
- Kunden_ID
- Menge
- Bezeichnung
- Preis

Die Tabelle Bestellung hat die Tabelle Kunden als MasterSource.
Index sind natürlich jeweils Kunden_ID

Wenn ich z.B. mit einem Lookupfeld den Kunden und das Produkt auswähle,
soll mit hilfe eines Buttos OK in die Tabelle Bestellung die Kunden_ID, Menge, Bezeichnung und Preis einfügen.

Das ganze geht auch, jedoch nur einmal. Will ich einen zweiten Artikel hinzufügen, bekomme ich einen Indexfehler.
Ich habe bereits heraus gefunden, das ich in die Spalte mit dem index nicht zweimal den selben wert eintragne kann.
Das müßte aber sein, da die Kunden_ID immer gespeichert wird und bei dem selben Kunden natürlich die selbe Kunden_ID ist.

Das ganze ist so geplant, dass wenn ich bei der Bestellübersicht den Kunden auswähle, alle seine bestellten Artikel in einer DBGrid angezeigt werden.
Dies kann man doch normalerweise wunderbar mit der Verknüpfung der Tabellen realisieren.

Villeicht hat ja jemand eine Idee.
Die tabellen müssen nicht unbedingt Verknüpft sein. Ich nehem auch andere Lösungen, bei denen ich über die Kundenauswahl alle bestellten Artikel in einer Tabelle angezeigt bekomme.

MfG Timo
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#2
  Alt 1. Jul 2003, 11:01
Es sollte reichen, wenn der Index Kunden_ID in Bestellung nicht eindeutig ist. Das ist in Deinem Falle ja gar nicht erforderlich. Dann dürfen auch mehrere Datensätze mit der gleichen Kunden_ID hinzugefügt werden.
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
bomberpilot80

Registriert seit: 27. Mär 2003
8 Beiträge
 
#3

Fehler

  Alt 2. Jul 2003, 09:46
Sorry,
ich habe einen kleinen Fehler in meiner Beschreibung.

Kunden_ID hat natürlich keinen index sondern den Primärschlüssel.
Ansonsten kann ich die Tabellen nicht über den MasterSource der Table-Komponente verknüpfen.

Mit dem Indes habe ich es noch nicht hin bekommen. Wenn Jemand eine kleine Beschreibung hat, wie ich es mit Index machen kann, wäre nicht schlecht.

MfG Timo
  Mit Zitat antworten Zitat
Mario

Registriert seit: 7. Apr 2003
567 Beiträge
 
Delphi 2006 Enterprise
 
#4
  Alt 2. Jul 2003, 09:54
Deine MasterTabellen sind OK. Deine Detail-Tabelle musst Du nun umstellen. Einmal musst Du zum Anfang ein Feld (z.B. idx) mit einem AutoInc zufügen, dass ist Dein neuer Primärschlüssel. Dann legst Du noch einen Sekundärschlüssel an: Feld Kunden_Id, nicht eindeutig. Das wars.

Nun in Delphi deine Detail-Tabelle noch mal Aktive False und wieder True schalten und bei der Feldverknüfung kannst Du Dich für einen Index entscheiden. Da nimmst Du dann den Sek.Index.
Schöne Grüße,
Mario Noack
  Mit Zitat antworten Zitat
bomberpilot80

Registriert seit: 27. Mär 2003
8 Beiträge
 
#5

Danke schön

  Alt 3. Jul 2003, 08:55
erstmal danke schön,
habe es mittlerweile selber raus bekommen.

Habe ein altes Delphibuch aus meinen schulzeiten gefunden.
Da ist alles ziemlich gut beschrieben. Das versteht sogar ein Id...

Habe schon lange nichts mehr mit Delphi gemacht und taste mich so langsam wieder rein.

MfG Timo
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:13 Uhr.
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