Wie erstellen Sie zusammengesetzte Schlüssel?
Ich bin neu in MySQL WB, so kann ich Fremdschlüssel erstellen durch hinzufügen der relation zwischen zu dependen Tabellen.
Aber wie erstellen Sie einen zusammengesetzten Schlüssel?
Ich habe zum Beispiel diese sql-Tabelle
CREATE TABLE TASKS
(
TEST_ID NUMBER(6) CONSTRAINT FK_TASKS_TESTS REFERENCES TESTS(TEST_ID),
TASK_ID NUMBER(3),
MAX_POINTS NUMBER,
CONSTRAINT PK_TASKS PRIMARY KEY (TEST_ID, TASK_ID)
);
Gibt es eine Möglichkeit für diese geschaffen werden sollten ansonsten?
InformationsquelleAutor Vlad | 2012-02-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kommt die Frage auf Einzigartigkeit. Wenn Sie wissen, dass TASK_ID einzigartig sein wird, dann wird es besser sein, eine einzelne Spalte als Primärschlüssel. MySQL erlaubt, für einen mehrspaltigen Primärschlüssel, aber wenn TASK_ID einzigartig sein wird nur machen, dass der Primärschlüssel und fügen Sie einen anderen index für TEST_ID. Die syntax für den Primärschlüssel wäre:
Sehen diese Diskussion für weitere Informationen.
InformationsquelleAutor davidethell
Zunächst die Foreign Key-Einschränkung, ich glaube nicht, dass es sein sollte. So weit wie ich kann sagen, alle constraints deklariert werden nach der Variablendeklaration (es ist eine der Normen der sql im Allgemeinen)
für den composite-Schlüssel, den Sie fast hatte es Sie nur eine Sache falsch und das schreiben Contraint. hier ist das Beispiel der Arbeit
InformationsquelleAutor Saad Touhbi
Angenommen, Sie haben bereits eine Tabelle erstellt, jetzt können Sie diese Abfrage verwenden, um zusammengesetzte primary key -
alter table Angestellter add primary key(emp_id,emp_name);
InformationsquelleAutor Usman Yaqoob