Vinzenz Mai: CREATE TABLE

Beitrag lesen

Hallo,

kann mir jemand sagen wieso folgende MYSQL Anweisung nicht funktioniert?

CREATE TABLE Teilnehmer(

Teilnehmer_ID INT(100) NOT NULL,
Vorname VARCHAR(50) NOT NULL,
Nachname VARCHAR(50) NOT NULL,
PRIMARY KEY(Teilnehmer_ID),
INDEX ix_td(Kurs_ID),
INDEX ix_td(Mannschaft_ID),
FOREIGN KEY(Kurs_ID) REFERENCES Kurs(Kurs_ID) ON DELETE CASCADE ON UPDATE CASCADE
FOREIGN KEY(Mannschaft_ID) REFERENCES Mannschaft(Mannschaft_ID) ON DELETE CASCADE ON UPDATE CASCADE
)
ENGINE = InnoDB

  
 - die Spalten mit den Namen  
     Kurs\_ID  
     Mannschafts\_ID  
   fehlen.  
  
 - Deswegen kannst Du weder Indexe für die Spalten anlegen noch kannst Du  
   FOREIGN-KEY-Constraints anlegen  
  
 - Du kannst außerdem nicht zwei verschiedene Indexe mit gleichem Namen anlegen  
   Es bietet sich eventuell ein kombinierter Index an:  
   INDEX ix\_td(Kurs\_ID, Mannschaft\_ID)  
  
 - Die Tabellen Kurs und Mannschaft müssen vor der Tabelle Teilnehmer angelegt  
   werden.  
  
Freundliche Grüße  
  
Vinzenz