PDA

Vollständige Version anzeigen : Anfügeabfrage - Schlüsselverletzung


Koreline
24.09.2003, 20:03
Meine lieben Access-Wissenden!

Stehe vor einem einfachen Problem (glaub ich wenigstens) und kriegs aber nicht auf die Reihe.

Hab eine Tabelle A und eine Tabelle B

In der Tabelle A sind ein paar Datensätze, deren ID's noch nicht in B vorhanden sind, und die möchte ich einfach mittels Anfügeabfrage rüberschippeln. Funkt aber nicht, und ich komm nicht drauf.
Ich krieg ständig die Fehlermeldung mit der Schlüsslverletzung, aber ich hab die Tabellen bereits auf Dupletten oder doppelte Autowerte überprüft - alles OK.

Hat jemand eine Idee?

Hier mal mein Code:

INSERT INTO Projektergebnisse ( Autowert_ÄrzteDB )
SELECT DISTINCTROW ÄrzteDB.Autowert
FROM ÄrzteDB LEFT JOIN Projektergebnisse ON ÄrzteDB.Autowert = Projektergebnisse.Autowert_ÄrzteDB
WHERE (((Projektergebnisse.Autowert_ÄrzteDB) Is Null));

System:
W2K, Access 97, Tabellen liegen via ODBC auf MS SQL 7.0

Dankeschön aus Wien :angel:
Koreline

Nouba
24.09.2003, 20:36
Hallo,

in der Tabelle Projektergebnisse darf das Feld Autowert_ÄrzteDB kein Autowert. Wie der Name schon sagt, versorgt sich das Tabellenfeld selbst mit einem Wert. Mit einem langen Ganzzahlenfeld solltest Du erfolg haben.

Koreline
24.09.2003, 20:39
Hallo Nouba!

Mein "Autowert_ÄrzteDB" ist natürlich kein Autowertfeld (heißt nur so)sondern ein ganz normales Zahlenfeld für einen Fremdschlüssel. Die Tabelle Projektergebnisse hat eh einen eigenen Autowert, aber den muß ich ja bei der Anfügeabfrage nicht mitangeben.

Eine andere Idee, woran es liegen könnte?

lg
Koreline

Koreline
24.09.2003, 22:37
Hat denn wirklich niemand eine Lösung für mich?

lg
Koreline :confused:

stpimi
25.09.2003, 07:28
Ich würde mal nur die Abfrage alleine machen, ohne "Insert into ... ". Vielleicht gibt das ein wenig mehr Aufschluß, was wirklich eingefügt werden soll.
Wenn das nichts hilft, musst Du uns wohl oder übel die Datenbank zur Verfügung stellen müssen (komprimiert und gezippt). Das ganze mit Deinen Daten, da diese ja das Problem darstellen. Ich hoffe, das das vom Datenschutz her möglich ist ...

Mfg, Michael

Koreline
25.09.2003, 09:10
Hi Michael!

Da nimmt sich ja doch noch wer um mein Problem an.
Das mit der Auswahlabfrage hab ich schon hinter mir - und die liefert mir genau die Datensätze, die ich haben will.

So, jetzt wollt ich gerade die Datenbank abspecken, damit ich sie hier reinhängen kann und habs nochmals probiert - und jetzt gehts. dann muß es am SQL liegen.

Vielleicht eine Idee, woran es liegen könnte?

Liebe Grüße
Karen


ps: ich häng die Db trotzdem mal rein, vielleicht hab ich ja was übersehen.

Koreline
14.10.2003, 20:19
Liebe Helferlein!

Ich gebs mal nach oben, weil ich das Problem noch immer nicht gelöst habe.
Weiß mittlerweile nur soviel, daß es bei einer lokalen Tabelle im Access einwandfrei funktioniert, nur wenn die Dinger via ODBC im SQL liegen, geht nix mehr.

Verwende: W2K, Access 97 SR2, SQL 7.0

Dankeschön
Koreline