AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi m:n Beziehung mit Paradox und Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

m:n Beziehung mit Paradox und Delphi

Ein Thema von buyden · begonnen am 15. Sep 2004 · letzter Beitrag vom 15. Sep 2004
Antwort Antwort
Benutzerbild von buyden
buyden

Registriert seit: 10. Apr 2003
Ort: Schneeberg
228 Beiträge
 
Delphi 7 Enterprise
 
#1

m:n Beziehung mit Paradox und Delphi

  Alt 15. Sep 2004, 17:14
Hi,

ich hab ein Problem beim erstellen einer m:n-Beziehung zwischen 2 Paradoxtabellen.

Ich möchte eine Datenbank erstellen, in der ich verschiedene Computermodelle erfasse und die dazugehörige Ausstattung aufnehmen kann. Also z.B. in Gerät XY befindet sich eine Festplatte Z und 2 RAM-Riegel T.

Dazu hab ich also eine Tabelle Geraet:
Geraetenummer(P)
Bezeichnung

Tabelle Komponenten:
Artikelnummer (P)
Bezeichnung

und die Verbindungsabelle
ID (P)
Geraet -> Sekundärindex
Komponente -> Sekundärindex
Anzahl

Unter Delphi hab ich bei der Verbindungstabelle als MasterSource Tabelle Geraet angegeben, MasterField ist Geraetenummernummer->Geraet.
Bei der Tabelle Komponenten ist die Verbindungstabelle MasterSource und Komponente->Artikelnummer ist MasterField.

Wenn ich jetzt in die Tabelle Komponenten irgendetwas speichern will bekomme ich eine "KeyViolation".

Ich bin schon fast am Verzweifeln und für jeden Hinweis dankbar.
Es gibt keine dummen Fragen, außer die von mir


MFG BUYDEN
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: m:n Beziehung mit Paradox und Delphi

  Alt 15. Sep 2004, 17:46
Zitat von buyden:
ich hab ein Problem beim erstellen einer m:n-Beziehung zwischen 2 Paradoxtabellen.

Ich möchte eine Datenbank erstellen, in der ich verschiedene Computermodelle erfasse und die dazugehörige Ausstattung aufnehmen kann. Also z.B. in Gerät XY befindet sich eine Festplatte Z und 2 RAM-Riegel T.

Dazu hab ich also eine Tabelle Geraet:
Geraetenummer(P)
Bezeichnung

Tabelle Komponenten:
Artikelnummer (P)
Bezeichnung

und die Verbindungsabelle
ID (P)
Geraet -> Sekundärindex
Komponente -> Sekundärindex
Anzahl
Die Verbindungstabelle sieht üblicherweise so aus:
Code:
Geraet     (P)
Komponente (P)
Anzahl
Der Primärschlüssel der Verbindungstabelle erstreckt sich über die Felder Geraet und Komponente.
Der Datentyp von Verbindungstabelle.Geraet muss exakt dem Datentyp von Geraet.Geraetenummer entsprechen. (Analoges gilt für Verbindungstabelle.Komponente)
Primärschlüsselfelder müssen das Attribut NOT NULL tragen. (manche Datenbanken z.B.: Access erzwingen dies nicht)
Weitere Indexe auf der Verbindungstabelle sind nicht erforderlich. (Man könnte einen NOT-UNIQUE Index auf Verbindungstabelle.Komponente legen um bestimmte Abfragen zu beschleunigen)
Andreas
  Mit Zitat antworten Zitat
KrasserChecker

Registriert seit: 21. Jul 2004
120 Beiträge
 
#3

Re: m:n Beziehung mit Paradox und Delphi

  Alt 15. Sep 2004, 17:53
@shmia:
Zitat:
Der Primärschlüssel der Verbindungstabelle erstreckt sich über die Felder Geraet und Komponente.
Normalerweise widerspreche ich ja nur ungerne, aber die Auffassung, dass der PK über zwei Felder gehen soll teile ich nicht unbedingt. So ist es zwar einfacher - allerdings sind in eine wirklich schön designten DB (wenn möglich) nur Tabellen, die ein Feld als Primary Key haben. Das erfordert zwar mehr Aufwand (z.B. Stored Procedures oder Generatoren (je nach DB)), aber dafür ist alles schön einheitlich.
  Mit Zitat antworten Zitat
Benutzerbild von buyden
buyden

Registriert seit: 10. Apr 2003
Ort: Schneeberg
228 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: m:n Beziehung mit Paradox und Delphi

  Alt 15. Sep 2004, 20:41
Danke erstmal,

Zitat von shmia:
Der Primärschlüssel der Verbindungstabelle erstreckt sich über die Felder Geraet und Komponente.
Ich werd das mal so versuchen.
Kann man das NOT NULL -Attribut eigentlich bei ner Paradox-Tabelle einstellen? Naja wenn dann werd ich das schon finden.

Es gibt keine dummen Fragen, außer die von mir


MFG BUYDEN
  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 06:16 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