FOREIGN KEY .. REFERENCES ..
Hallo zusammen,
bin eigentlich eher in der ORACLE-Welt zu Hause.
Nun muss ich zu Schulungsszwecken eine MySQL-DB aufbauen.
Erst hatte ich die Vers. 3.38. Als ich zum x. Mal versuchte einen FOREIGN KEY-Constraint einzusetzen und es nicht funzte, las ich im Netz, dass das erst am V4.0 geht.
Also flugs aufgesetzt und es funzt immer noch nicht, weder über MySQL-Front noch über SQL-Befehl (s.u.).
Wenn ich die Tabelle wie unten erstellen, gibt es keine Fehlermeldung, aber der FOREIGN KEY-Constraint ist wirkungslos bzw. ist gar nicht erstellt worden.
MySQL4.0 läuft bei mir auf Windows 2000 Prof.
Weiss jemand weiter? Würde mir echt helfen.
Gruß Jochen
Hier der CREATE-Befehl:
CREATE table EMP (
`EMPLOYEE_ID` int(6) NOT NULL default '0',
`FIRST_NAME` varchar(20) default NULL,
`LAST_NAME` varchar(25) NOT NULL default '',
`EMAIL` varchar(25) NOT NULL default '',
`PHONE_INTEGER` varchar(20) default NULL,
`HIRE_DATE` date NOT NULL default '0000-00-00',
`JOB_ID` varchar(10) NOT NULL default '',
`SALARY` double(8,2) default NULL,
`COMMISSION_PCT` double(4,2) default NULL,
`MANAGER_ID` int(6) default NULL,
`DEPARTMENT_ID` int(4) default NULL,
PRIMARY KEY (`EMPLOYEE_ID`),
UNIQUE KEY `EMAIL` (`EMAIL`),
KEY `EMP_DEPARTMENT_IX` (`DEPARTMENT_ID`),
KEY `EMP_JOB_IX` (`JOB_ID`),
KEY `EMP_MANAGER_IX` (`MANAGER_ID`),
KEY `EMP_NAME_IX` (`LAST_NAME`,`FIRST_NAME`),
FOREIGN KEY (DEPARTMENT_ID) REFERENCES departments(DEPARTMENT_ID) ON DELETE CASCADE
) TYPE=InnoDB;
Geändert von xjmdolby (04.04.2006 um 15:02:06 Uhr)
|