Fehler ORA-02270: keine passende unique-oder primary key-Spalte-Liste
Ich bin üben, ein Labor-Handbuch übung, in der ich zum erstellen 6 Tabellen. Schaffung von 5 ist
erfolgreich.
Aber eine Zeile gibt Fehler
constraint GRADE_Designation_FK
FOREIGN KEY(Designation) References EMPLOYEE(Designation),
FEHLER in Zeile 7:
ORA-02270: keine passende unique-oder primary key-Spalte-Liste
Abfragen von 2 verknüpften Tabellen
create table EMPLOYEE
(
Empno number(4) constraint EMPLOYEE_Empno_PK PRIMARY KEY,
Name varchar2(10) not null,
Designation varchar2(50),
Qualification varchar2(10),
Joindate date
);
create table GRADE
(
Designation varchar2(50) constraint GRADE_Designation_PK PRIMARY KEY,
Grade number(2),
TotalPosts number(4),
PostsAvailable number(4),
constraint GRADE_Grade_CK check(Grade between 1 and 20),
constraint GRADE_PostsAvailable_CK check(PostsAvailable <= TotalPosts),
constraint GRADE_Designation_FK FOREIGN KEY(Designation) References EMPLOYEE(Designation)
);
Versucht
create table GRADE
(
Designation varchar2(50) constraint GRADE_Designation_PK PRIMARY KEY,
Grade number(2),
TotalPosts number(4),
PostsAvailable number(4),
constraint GRADE_Grade_CK check(Grade between 1 and 20),
constraint GRADE_PostsAvailable_CK check(PostsAvailable <= TotalPosts)
);
create table EMPLOYEE
(
Empno number(4) constraint EMPLOYEE_Empno_PK PRIMARY KEY,
Name varchar2(10) not null,
Designation varchar2(50) NOT NULL UNIQUE,
Qualification varchar2(10),
Joindate date default sysdate
constraint EMPLOYEE_Designation_FK FOREIGN KEY(Designation) References GRADE(Designation),
);
Nun neue Fehler
Einschränkung EMPLOYEE_Designation_FK FOREIGN KEY(Bezeichnung) References KLASSE(Bezeichnung)
*FEHLER in Zeile 8:
ORA-02253: constraint-Spezifikation nicht erlaubt hier
Müssen Sie ein Komma nach "Joindate Datum DATEPART-Standard".
InformationsquelleAutor Sameer Azeem | 2014-10-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hast du die Einschränkung in der falschen Tabelle. Erstellen Sie einen Fremdschlüssel auf MITARBEITER.BEZEICHNUNG, verweisen zurück zur KLASSE.BEZEICHNUNG.
Damit Ihre Tabellen sollten etwa so Aussehen:
Teilen und genießen.
Ich bearbeitet meine Antwort um zu zeigen, wie dies durchgeführt werden soll. Die foreign key-Einschränkung sein sollte auf MITARBEITER, die Referenzierung GRAD - du hast es anders herum. Viel Glück.
bearbeitet meine Frage...habe versucht, Ihre Methode zu.neue Fehler
InformationsquelleAutor Bob Jarvis
Dieser Fehler ist sehr selbsterklärend und sagt dir, was falsch ist. In Ihrem Fall, Sie versuchen, zu erstellen Fremdschlüssel auf eine nicht-Primärschlüsselspalte und so den Fehler
Designation
imEMPLOYEE
Tabelle ist kein Primärschlüssel, und Sie können nicht erstellen Sie FK auf eine nicht-Primärschlüsselspalte. Ihre Erstellung der Tabelle sollte eher so Aussehen wieIch sehe dein edit in Frage. Das sollte die Arbeit nicht in Ordnung. Sie sind immer, dass neue Fehler verursachen werden, verpassen Sie eine
,
vor der letzten Zeile inemployee
Tabelle.InformationsquelleAutor Rahul
Es wurde die Reihenfolge der Ausführung, die hat bewirkt, dass uns dieses Problem, stellen Sie sicher, Sie haben Tabellen erstellt, mit not NULL Aktiviert ist, bevor Sie das hinzufügen dieser Einschränkungen um diesen Fehler zu vermeiden.
InformationsquelleAutor Pravin