Hi , Ich steh voll auf der Leitung grad...
Ich will zwei Tables erstellen, die durch einen Foreign Key miteinander verknuepft sind...
Ein Table Person, in der alle Personen gespeichert werden
Ein Table Customer, die Personen enthaelt, die etwas gekauft haben.
Nun hab ich folgende zwei Tables mit
mysql erstellt :
SQL-Code:
CREATE TABLE `x`.`Customer` (
`ID` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
`TotalPrice` DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY(`ID`)
)
ENGINE = InnoDB;
CREATE TABLE `x`.`Person` (
`ID` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
`CustomerID` INTEGER UNSIGNED NOT NULL DEFAULT 0,
`ADName` VARCHAR(45) NOT NULL DEFAULT '',
PRIMARY KEY(`ID`),
CONSTRAINT `CustomerID` FOREIGN KEY `CustomerID` (`ID`)
REFERENCES `customer` (`ID`)
ON DELETE CASCADE
ON UPDATE CASCADE
)
ENGINE = InnoDB;
Wenn ich nun
insert into x.person (ADName) VALUES ('Name1')
eingebe, erhalte ich folgende Meldung:
Zitat:
Cannot add or update a child row: a foreign key constraint fails
Liegt es daran, dass ich noch keine Customer erstellt habe ? Ich will allerdings zunaechst alle Personen in die Datenbank schreiben, bevor Kunden hinzugefuegt werden koennen...