Hallo an alle und vielen Dank schon einmal für eure Bemühungen.
Ich bin gerade dabei für meine Abschlussprüfung eine Tabellenstruktur umzusetzen.
Hierfür muss ich Tabellen anlegen, was mir bis jetzt noch keine großen Probleme bereitet hat.
Nun bin ich aber heute auf ein Problem gestoßen mit dem ich nicht fertig werden.
Es geht um folgendes:
Ich besitze 2 Tabellen:
Tabelle 1 = Bank
Darin sind unterschiedliche Felder wie BLZ (Primärschlüssel), Bank, Strasse, PLZ und Ort erstellt
Hierfür mein Code:
CREATE TABLE `Bank` (
`BLZ` INT ( 8 ) NOT NULL PRIMARY KEY ,
`Bank` VARCHAR( 100 ) NOT NULL ,
`Strasse` VARCHAR( 100 ) NOT NULL ,
`PLZ` INT( 5 ) NOT NULL ,
`Ort` VARCHAR( 100 ) NOT NULL
);
Tabelle 2 = Kunde
KdNr (Primärschlüssel), Name, Vorname, Strasse, PLZ, Ort, und BLZ (um dies geht es)
Nun möchte ich eine Verbindung via FOREIGN KEY erstellen. Die Spalte BLZ aus Kunden soll mit der Spalte BLZ aus Bank verbunden werden.
Hier der Code:
CREATE TABLE `Kunde` (
`KdNr` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`NName` VARCHAR( 100 ) NOT NULL ,
`VName` VARCHAR( 100 ) NOT NULL ,
`Strasse` VARCHAR( 100 ) NOT NULL ,
`PLZ` INT( 5 ) NOT NULL ,
`Ort` VARCHAR( 100 ) NOT NULL ,
`EMail` VARCHAR( 100 ) NOT NULL ,
`Telefon` VARCHAR( 20 ) NOT NULL ,
`Mobil` VARCHAR( 20 ) NOT NULL ,
`BLZ` INT ( 8 ) NOT NULL ,
`KtoNr` VARCHAR( 20 ) NOT NULL,
FOREIGN KEY (BLZ) REFERENCES Bank(BLZ)
ON DELETE CASCADE
);
Der SQL Befehl weißt mein erstellen der Tabelle keinerlei Fehler auf.
Nur habe ich ein Problem. Es kommt keine Verbindung zu stande. Ich habe in der Tabelle Bank eine Musterbank erstellt. Eigentlich sollten dann ja bei der Kundenanlage nur BLZ´s eingetragen werden können die in der Bank (BLZ) hinterlegt sind. Dies funktioniert leider nicht so wie gewünscht.
Leider bin hier jetzt mit meinem latein am ende, ich habe schon etliche versuche unternommen den FOREIGN KEY einzubinden, leider ohne Erfolg
Ich hoffe ihr habt eine Lösung für mich
Viele Grüße und besten Dank
Tobi
Ich bin gerade dabei für meine Abschlussprüfung eine Tabellenstruktur umzusetzen.
Hierfür muss ich Tabellen anlegen, was mir bis jetzt noch keine großen Probleme bereitet hat.
Nun bin ich aber heute auf ein Problem gestoßen mit dem ich nicht fertig werden.
Es geht um folgendes:
Ich besitze 2 Tabellen:
Tabelle 1 = Bank
Darin sind unterschiedliche Felder wie BLZ (Primärschlüssel), Bank, Strasse, PLZ und Ort erstellt
Hierfür mein Code:
CREATE TABLE `Bank` (
`BLZ` INT ( 8 ) NOT NULL PRIMARY KEY ,
`Bank` VARCHAR( 100 ) NOT NULL ,
`Strasse` VARCHAR( 100 ) NOT NULL ,
`PLZ` INT( 5 ) NOT NULL ,
`Ort` VARCHAR( 100 ) NOT NULL
);
Tabelle 2 = Kunde
KdNr (Primärschlüssel), Name, Vorname, Strasse, PLZ, Ort, und BLZ (um dies geht es)
Nun möchte ich eine Verbindung via FOREIGN KEY erstellen. Die Spalte BLZ aus Kunden soll mit der Spalte BLZ aus Bank verbunden werden.
Hier der Code:
CREATE TABLE `Kunde` (
`KdNr` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`NName` VARCHAR( 100 ) NOT NULL ,
`VName` VARCHAR( 100 ) NOT NULL ,
`Strasse` VARCHAR( 100 ) NOT NULL ,
`PLZ` INT( 5 ) NOT NULL ,
`Ort` VARCHAR( 100 ) NOT NULL ,
`EMail` VARCHAR( 100 ) NOT NULL ,
`Telefon` VARCHAR( 20 ) NOT NULL ,
`Mobil` VARCHAR( 20 ) NOT NULL ,
`BLZ` INT ( 8 ) NOT NULL ,
`KtoNr` VARCHAR( 20 ) NOT NULL,
FOREIGN KEY (BLZ) REFERENCES Bank(BLZ)
ON DELETE CASCADE
);
Der SQL Befehl weißt mein erstellen der Tabelle keinerlei Fehler auf.
Nur habe ich ein Problem. Es kommt keine Verbindung zu stande. Ich habe in der Tabelle Bank eine Musterbank erstellt. Eigentlich sollten dann ja bei der Kundenanlage nur BLZ´s eingetragen werden können die in der Bank (BLZ) hinterlegt sind. Dies funktioniert leider nicht so wie gewünscht.
Leider bin hier jetzt mit meinem latein am ende, ich habe schon etliche versuche unternommen den FOREIGN KEY einzubinden, leider ohne Erfolg
Ich hoffe ihr habt eine Lösung für mich
Viele Grüße und besten Dank
Tobi
Comment