PDA

Vollständige Version anzeigen : mehrfach vorkommende Werte


Alexandra, die zweite
17.10.2001, 07:33
Hallo!

folgendes Ausgangssituation: Ich habe eine 1 Haupttabelle und mehrere Untertabellen. Verbunden sind alle über ein ID Feld, wobei dies bei der Haupttabelle ein Autowert Feld ist und bei den anderen ein Zahlenwert Feld.

Das einzige Feld, das einen Primärschlüssel hat, ist das ID Feld in der Haupttabelle; bei allen anderen Tabellen und Feldern steht indiziert auf nein bzw. auf ja (Duplikate möglich)

Ich habe jetzt eine Abfrage, in der ich alle relevanten Felder aus den Tabellen quasi zusammengefasst hab. Außerdem ein Formular, das auf der Abfrage basiert (Unterformulare will ich aus verschiedenen Gründen nicht einsetzen; s.u.). Soweit so gut ..

Trage ich jetzt über das Formular etwas ein, kann ich dies beim ersten Datensatz noch problemlos (die ID Felder der "Unter"tabellen fülle ich momentan noch per Hand aus; ich schreibe den gleichen Wert wie im AutoWert ID Feld der Haupttabelle rein), beim verlassen des zweiten
Datensatzes kommt dann allerdings die Meldung


Die von Ihnen vorgenommenen Änderungen an der Tabelle konnten nicht vorgenommen werden, da der Index, Primärschlüssel oder die Beziehung mehrfach vorkommende Werte enthalten würde. Ändern Sie die Daten in den Feldern, die gleiche Daten enthalten, entfernen Sie den Indes, oder definieren Sie den Index neu, damit doppelte Einträge möglich sind, und versuchen Sie es erneut


Im Grunde genommen ist die Fehlermeldung kein Problem, aber ich weiß beim besten Willen nicht welches Feld oder welche Felder ACC2000 damit bei mir meinen könnte. Könnt ihr mir so spontan einen Tipp geben, oder kann ich irgendwo nachverfolgen (ggf. mit einem anderem Programm) welches Feld hier angemeckert wird?

schon gewusst, dass wir bald wieder Wochenende haben? :-),
Alex

ps:
warum keine Unterformulare: die Felder aus den Unterformularen sind ein wenig verstreut, und ich würde nicht mit einem Unterformular pro Tabelle auskommen. Außerdem möchte ich eine Funktion einbinden, die es ermöglicht, den aktuellen Datensatz zu kopieren - und für mich persönlich dürfte es mit einem einzelnen Formular leichter zu programmieren sein, als mit Unterformularen

immelmann
17.10.2001, 07:51
Hatte ähnliches Problem. Spontan würde ich meinen, daß AutoWert-Felder als Primärschlüssel (ID) sich nur mit anderen Feldern per Abfrage vergleichen lassen, wenn diese "Long Integer" sind.
Gruß Torsten

Mattes
17.10.2001, 07:53
Hallo Alexandra,

nimm mal alle Indizierungen in den "Untertabellen" raus und versuch dann nochmal. Eigentlich sollte es so wie von Dir Beschrieben keine Probleme geben.

Alexandra, die zweite
17.10.2001, 08:28
Hallo ihr 2!

Mein ewiger Dank wird euch gewiss sein!

@immelmann
-Die Felder waren schon als Long Integer angeben, daran hat's leider nicht gelegen, aber danke für deinen Tipp!

@mattes
-das scheint's gewesen zu sein, zumindest klappt jetzt alles!

Kannst du mir vielleicht sagen, warum das so ist? Was sollen die Indizierungen eigentlich bewirken??


Auf jeden Fall nochmals danke, nu macht das Warten aufs Wochenende noch mehr Spaß,
Alex

Mattes
17.10.2001, 10:23
Hi Alex,

Eine Indizierung eines Feldes bewirkt, das eine Suche schneller abläuft. Kannst Du in Etwa mit dem Inhaltsverzeichnis von einem Buch vergleichen. Dabei kannst Du festlegen, ob Duplikate möglich sind, oder nicht.

Ich vermute, das Du irgendwo in Deinen Untertabellen Duplikate"Nein" eingestellt hattest. Einen Index brauchst Du hier eigentlich gar nicht.

Genauer weiss ich das auch nicht.

Alexandra, die zweite
17.10.2001, 10:59
Hi Mattes

Laut Leistungsanalyse wurde empfohlen die ID Felder der einzelnen Untertabellen zu indizieren, was ich jetzt auch gemacht hab; funktioniert trotzdem alles noch problemlos.

Ich hatte, wie gesagt, vorher die Indizierung auf Nein, oder auf ja (Duplikate möglich) stehen; bin's 2-3 Mal durchgegangen.

Naja, ist ja jetzt auch egal. Hauptsache es läuft und ich kann weitermachen. danke,
Alex