Seid Ihr gegrüßt, Leute,
Ich wirke noch immer beim Aufbauen einer kleinen Firmendatenbank mit und bin auf ein weiteres Problem gestoßen - wie ich eine m:n Rekursivbeziehung unter MS SQL Server 2005 hinkriege. Hier - ein Beispiel:
Gegeben ist dieselbe Tabelle tbl_Projekt (Projekt_ID int/Primary Key/,Projektnummer,Projektkategorie, ...)
Es gibt 2 Arten von Projekten: Arbeitsprojekt und Akquisitionsprojekt
Alle Arbeitsprojekte sind aus einem oder mehren Akquise-Projekten hervorgegangen (sprich wurden beauftragt), alle Projekte werden in einer Tabelle geführt und haben bloß unterschiedliche Stati und Kategorien, dies ist notwendig, da Akquise-Projekte und "normale" Projekte gleiche Attributten besitzen.
Um diese Beziehung aufzubauen, müsste ich eine 2. Tabelle haben, wo Zuordnung von Projekten zu ihren "Akquise-Eltern" erfolgt: tbl_Projekt_zu_AKQ(Projekt_ID,AKQ_ID), wo beide Attributte auf Projekt_ID geschlossen sind.
Die Frage: Wie lässt es sich im SQL Server realisieren? Wenn ich folgende CONSTRAINTs einfüge - kriege ich eine Fehlermeldung, da die beiden FK auf dieselbe Spalte verweisen:
(...) CONSTRAINT [tbl_P_AKQ_FK00] FOREIGN KEY([Projekt_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE,
CONSTRAINT [tbl_P_AKQ_FK01] FOREIGN KEY([Akquise_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE
Ich bin ja nicht vom Fach und schwitze an dem Projekt schon ziemlich lange, möchte aber dies gern durchziehen
Vielen besten Dank!
Grüße aus Braunschweig
Ich wirke noch immer beim Aufbauen einer kleinen Firmendatenbank mit und bin auf ein weiteres Problem gestoßen - wie ich eine m:n Rekursivbeziehung unter MS SQL Server 2005 hinkriege. Hier - ein Beispiel:
Gegeben ist dieselbe Tabelle tbl_Projekt (Projekt_ID int/Primary Key/,Projektnummer,Projektkategorie, ...)
Es gibt 2 Arten von Projekten: Arbeitsprojekt und Akquisitionsprojekt
Alle Arbeitsprojekte sind aus einem oder mehren Akquise-Projekten hervorgegangen (sprich wurden beauftragt), alle Projekte werden in einer Tabelle geführt und haben bloß unterschiedliche Stati und Kategorien, dies ist notwendig, da Akquise-Projekte und "normale" Projekte gleiche Attributten besitzen.
Um diese Beziehung aufzubauen, müsste ich eine 2. Tabelle haben, wo Zuordnung von Projekten zu ihren "Akquise-Eltern" erfolgt: tbl_Projekt_zu_AKQ(Projekt_ID,AKQ_ID), wo beide Attributte auf Projekt_ID geschlossen sind.
Die Frage: Wie lässt es sich im SQL Server realisieren? Wenn ich folgende CONSTRAINTs einfüge - kriege ich eine Fehlermeldung, da die beiden FK auf dieselbe Spalte verweisen:
(...) CONSTRAINT [tbl_P_AKQ_FK00] FOREIGN KEY([Projekt_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE,
CONSTRAINT [tbl_P_AKQ_FK01] FOREIGN KEY([Akquise_ID])
REFERENCES [dbo].[tbl_Projekte] ([Projekt_ID])
ON UPDATE CASCADE
Ich bin ja nicht vom Fach und schwitze an dem Projekt schon ziemlich lange, möchte aber dies gern durchziehen
Vielen besten Dank!
Grüße aus Braunschweig