![]() |
Datenbank: mySQL • Version: 4.0.23 • Zugriff über: Mit dem Programm "MySQL-Front" (auch Delphi+Zeos)
SQL-MasterDetail Beziehung herstellen
Es gibt 2 Tabellen ( type = myISAM ):
Master: 1. Kunden ( ID = int(3)unsigned primary auto_increment, Name=varchar 30, Vorname=varchar 30 ) Detail: 2. Bestellungen ( ID = int(3)unsigned primary auto_increment, ArtNr=varchar 30, Menge=int, Preis=double ) Jetzt würde ich gerne zur Tabelle "Bestellungen" noch ein Feld hinzufühgen, KundenID = forign key (Kunden.ID). Wie ? Gehe ich irgendwie falsch vor? Wird dadurch eine Master/Detail Beziehung hergestellt ? Wenn nicht, wie denn dann ? Danke ;). |
Re: SQL-MasterDetail Beziehung herstellen
Moin.
Zitat:
SQL-Code:
Eine Master-Detail-Beziehung ist ein konzeptionelles Konstrukt - du kannst versuchen es in der Datenbank angemessen nachzubilden, aber das RDBMS weiß nicht was es bedeutet.
CREATE TABLE Bestellungen (
Id INT(3) UNSIGNED PRIMARY AUTO_INCREMENT, ArtNr VARCHAR (30), Menge INT, Preis DOUBLE, KundenId INT, INDEX xKunden (KundenId), FOREIGN KEY (KundenId) REFERENCES Kunden(Id) ) Grüße vom marabu |
Re: SQL-MasterDetail Beziehung herstellen
Wenn ich mich richtig erinnere sind Foreign Keys unter MySQL allerdings nur bei Tabellen vom Typ INNODB unterstützt. Bei MyIsam kann man das zwar angeben, aber die Referentielle Integrität wird nicht geprüft.
|
Re: SQL-MasterDetail Beziehung herstellen
Zitat:
Die Frage ist ja aber, er will eine Spalte hinzufügen, und nicht gleich die Tabelle neu erstellen:
SQL-Code:
alter table Bestellungen
Add KundenID int NULL |
Re: SQL-MasterDetail Beziehung herstellen
Hi Tom,
dann fehlt noch:
SQL-Code:
marabu
ALTER TABLE Bestellungen
ADD FOREIGN KEY (KundenId) REFERENCES Kunden(Id) |
Re: SQL-MasterDetail Beziehung herstellen
Yupp... Aber weil das unter MyISAM eh nichts ändert :wink:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz