Ich habe einige Probleme mit der Schlüsselreferenzierung. Der Fehler kommt aus, wenn ich versuche, Daten in Tabelle Mark einfügenHinzufügen von Primär-/Fremdschlüsseln und Referenzieren anderer Tabellen
INSERT INTO Mark(examID, studentID, result, occured, noOFAttempts)
VALUES ('B10', '1', '67', '11-JUL-07', '1');
ich den Fehler:
integrity constraint violated - parent key
not found
Kontext:
Die Tabellen-Prüfung und Schüler stellen Daten über College-Prüfungen und Studenten. Die Prüfungsergebnisse für die Schüler, einschließlich der Anzahl der Versuche, die ein Schüler bei einer Prüfung hatte (noOfAttempts), sind in Tabelle Mark unter Verwendung der ID-Spalte von Exam und der ID-Spalte von Student aufgezeichnet. Beide ID-Spalten haben eindeutige Werte. Ein Student hat nur das neueste Ergebnis für jede Prüfung aufgezeichnet.
Schreiben Sie einen SQL-Befehl, um die Mark-Tabelle zu erstellen. Schließen Sie die Primärschlüssel und die Fremdschlüssel aus den oben angegebenen Tabellen ein.
CREATE TABLE Exam (
id VARCHAR(255),
subject VARCHAR(255),
noOfStudents INT,
PRIMARY KEY (id));
-
CREATE TABLE Student (
id INT,
name VARCHAR(255),
PRIMARY KEY (id));
-
CREATE TABLE Mark (
examID VARCHAR(255),
studentID INT,
result INT,
occured DATE,
noOFAttempts VARCHAR(255),
FOREIGN KEY (noOFAttempts) REFERENCES Exam(id),
FOREIGN KEY (noOFAttempts) REFERENCES Student(id));
Wie kann ich den Fehler beheben i sein weiß mit falscher Referenzierung zu tun, dank
@GordonLinoff Update gemacht, danke für Ihre Wachsamkeit hier. –
Danke Tim und @GordonLinoff, dies machte meine Fehler klar, aktualisierte die Tabellen mit Daten und es behob das Problem. Denke nicht, dass ich noch ganz wach bin, haha. Danke noch einmal –