Wieso funktioniert meine Base-Datenbank mit einem aus 2 Attributen zusammengesetzten Primärschlüssel nicht?

Allgemein - (Datenbank, Base, LibreOffice) Fehlermeldung - (Datenbank, Base, LibreOffice)

2 Antworten

Du musst als Fremdschlüssel einen Primärschlüssel einer anderen Tabelle angeben. Wenn diese andere Tabelle, auf die Du Dich beziehst, einen Verbundschlüssel hat, musst Du als Fremdschlüssel auch diesen Verbundschlüssel angeben und nicht nur einen Teil davon, wie Du es gemacht hast. Syntaktisch wird ein Verbundschlüssel in runden Klammern mit den durch Komma getrennten Einzelfeldern angegeben.

Beispiele dazu:

PRIMARY KEY Id
PRIMARY KEY (Id, Fachkürzel)


FOREIGN KEY Id
FOREIGN KEY (Id, Fachkürzel)

Wenn Du für eine Abfrage eine teilweise Verknüpfung brauchst, lass den Fremdschlüssel weg und verknüpfe mit WHERE. Das geht immer und da wird auch immer so verknüpft wie man es hingeschrieben hat.

Hast Du wirklich einen Verbundschlüssel als Primärschlüssel? Oder denkste Dir das nur? Ich habe nämlich Zweifel, ob Du das hinbekommen hast.





Grevak 
Fragesteller
 26.05.2017, 08:14

Irgendwie geht das jetzt, aufeinmal. Da kann doch etwas nicht stimmen

0

Von welchem Datentyp ist denn Schüler_ID in Notenliste und Schüler_ID in Schülerliste?


Grevak 
Fragesteller
 24.05.2017, 07:26

Der Datentyp ist Zahl (Numeric)

0
okarin  24.05.2017, 07:38

Und warum numeric ich hätte da einfach nen integer mit autoincrement vergeben. Numeric sind gleitpunktzahlen.

0
Grevak 
Fragesteller
 24.05.2017, 11:42
@okarin

Keine Ahnung warum :D, ich versuche es mal

0
Grevak 
Fragesteller
 26.05.2017, 08:13
@Grevak

Habs geschafft übrigens

0
Grevak 
Fragesteller
 26.05.2017, 08:19
@Grevak

Aber wieso geht das aufeinmal

0
okarin  26.05.2017, 11:01

Einfach so? Dann war das Wohl n bug von libre Office xD. Trotzdem würde ich keine numerics als primary key und foreign key Verknüpfungen verwenden.

0